无论何时提到测试,第一个想到的就是白盒子测试和黑盒子测试。以上两项测试可以说是家喻户晓,但这两项测试的作用何在?现在,我们来看一下白盒测试工具。然后是代码分析程序等,让我们具体看看。
第一、Jtest工具介绍
这是一种集成的、易用的自动化Java单元测试工具,可用于动态类和组件测试。这样可以提高代码的稳定性,防止软件出错。
第二、Jcontract
在系统级,Jcontyt验证类/组件是否正常工作和正确使用。它是一种独立的工具,从功能上说,它是对Jcontyt的补充。DbC标注的Java代码可以使用Jcontyt插入。在系统中装配类/组件时,Jcontyt在运行时监视并报告错误使用和功能问题。Jcontyt可以帮助每个开发者有效地评估类/组件的系统级别的行为。
第三、CodeWizard
一个高级C/C++源代码分析工具,它使用了500多种编码规范来自动标记危险的代码结构,编译器不能检查这些代码。
第四、Insure++
Insure++是一种基于C/C++的工具,用于自动准确地检测内存错误和内存泄漏。保证++可视化实时内存操作,精确地发现内存泄漏的根源。Insure++还可以执行覆盖分析,以明确表示哪些代码经过了测试。
第五、BoundsChecker
BoundsCheckerVisualC++版是在运行时VisualC++开发人员首选的错误检测与调试工具。采用VisualC++开发环境下的自动调试处理程序,加速了应用程序的开发,缩短了产品发布时间。BoundsChecker对编程错误提供了清晰、详细的分析,C++特有的错误占了大部分。可检测和诊断静态和堆叠内存中的错误,以及内存和资源泄漏。BoundsChecker运行时验证了8700多个API和OLE方法,包括WindowsAPIs、ODBC、ActiveX、DirectX、COM和InternetAPIs。
第六、FailSafe
错误保护是VisualBasic环境中的一种自动错误处理和恢复工具。错误保护将插入附加代码以插入到程序中。在执行程序时,失败保护通过插入的代码来捕捉和记录错误信息。
该CA基于Java开发,JavaSwing模式支持跨平台运行。可扫描C,C++,Java等编程语言;支持Windows平台,Linux平台,命令行环境,IDE环境。这些规则包括:hub5369,hub5369(C++),javasun编程规范,jasun安全规则等等。根据预先制定的规则,CA对代码进行扫描分析,检查代码是否符合编码规范和各种规则,发现可能出现的错误,不需要编写测试用例,就能实现自动化测试,节省大量人力。CA支持源代码解析,得到代码控制流程图。查看流程图,就可以在代码级别实现测试覆盖,并可以轻松构建XUnit单元测试模块。通过时间设置CA还可以只检查更新的代码,提高工作效率。
根据上述说明,我们必须对这些工具有所了解。其中,CodeAnalyzer是最受欢迎的工具,它可以实现静态分析,代码漫游,代码规格说明检查以及代码潜在错误分析。