HardBirch

常用软件测试工具介绍与分析

时间:10-03-06 栏目:系统技术篇 作者:鲁智森也有文化 评论:0 点击: 1,882 次

随着软件测试的地位逐步提高,测试的重要性逐步显现,测试工具的应用已经成为了普遍的趋势。目前用于测试的工具已经比较多了,测试工具的应用可以提高测试的质量、测试的效率、减少测试过程中的重复劳动、实现测试自动化,这些测试工具一般可分为白盒测试工具、黑盒测试工具、性能测试工具,另外还有用于测试管理的工具,本文对常用的测试工具 一个分析比较。

1、白盒测试工具

白盒测试工具一般是针对代码进行测试,测试中发现的缺陷可以定位到代码级,根据测试工具原理的不同,又可以分为静态测试工具和动态测试工具。 静态测试工具直接对代码进行分析,不需要运行代码,也不需要对代码编译链接,生成可执行文件。静态测试工具一般是对代码进行语法扫描,找出不符合编码规范的地方,根据某种质量模型评价代码的质量,生成系统的调用关系图等;动态测试工具与静态测试工具不同,动态测试工具的一般采用"插桩"的方式,向代码生成的可执行文件中插入一些监测代码,用来统计程序运行时的数据。其与静态测试工具最大的不同就是动态测试工具要求被测系统实际运行。

(1) Jtest

是一个代码分析和动态类、组件测试工具,是一个集成的、易于使用和自动化的 Java 单元测试工具。它增强代码的稳定性,防止软件错误。

(2) Jcontract

Jcontract 在系统级验证类/ 件是否正确工 并被正确使用。Jcontract 是个独立工具,在功能上是 Jtest 的补充。可以用 Jcontract 插装按 DbC 注解的 Java 代码。当您将类/ 件组装成系统时,Jcontract 在运行时监视并报告错用和功能性问题。Jcontract 帮助每个开发人员有效地考核类 / 件的系统级行为。

(3) C++ Test

C++Test 可以帮助开发人员防止软件错误,保证代码的健全性、可靠性、可维护性和可移植性。

C++Test 自动测试 C 和 C++类、函数或组件,而无需编写单个测试实例、测试驱动程序或桩调用。

(4) CodeWizard

CodeWizard 代码静态分析工具,先进的 C/C++源代码分析工具,使用超过 500 个编码规范自动化地标明危险的,但是编译器不能检查到的代码结构。

(5) Insure++

Insure++是一个基于 C/C++的自动化的内存错误、内存泄漏的精确检测工具。 Insure++能够可视化实时内存操,准确检测出内存泄漏产生的根源。Insure++还能执行覆盖性分析,清楚地指示 那些代码已经测试过。

(6) .test

.TEST 是专为.NET 开发而推出的使用方便的自动化单元级测试与静态分析工具。使用超过 200条的工业标准代码规则对所写代码自动执行静态分析。这些规则立即应用.NET 工业专家深入、全面的编程知识到你的代码当中,迅速、彻底地防止错误的出现。自动测试代码构造与功能。 .TEST非常智能。 能提取刚完成的代码,对其进行读取,并提出如何对这些代码进行单元测试,不需要任何的人为干涉。所有由.TEST 产生的单元测试都是可以用户自定义的。

(7) BoundsChecker

BoundsChecker Visual C++ Edition 是针对 Visual C++开发人员的首选的运行时的错误检测和调试工具。它通过驻留在 Visual C++ 开发环境内 的自动调试处理程序来加速应用程序的开发,缩短产品发布的时间。BoundsChecker 对于编程中的错误,大多数是 C++中特有的提供了清晰的详细的分析。它能够检测和诊断出在静态,堆栈内存中的错误以及内存和资源泄漏问题。在运行状态下,BoundsChecker 验证超过 8,700 APIs 和 OLE 方法,包括最新的 Windows APIs, ODBC, ActiveX,DirectX, COM 和 Internet APIs。

(8) TrueTime

代码运行缓慢是开发过程中一个重要问题。一个应用程序运行速度较慢,程序员不容易找到到底是在哪里出现了问题,如果不能解决应用程序的性能将降低并极大的影响应用程序的质量,于是查找和修改性能瓶颈是调整整个代码性能的关键。如何快速的查找性能瓶颈呢?TrueTime 的出现就使这个问题变得很容易了。当我们在测试程序时,每完成一次应用话路,TrueTime 都能提供这次对话中函数的调用时间,提供详细的应用程序和组件性能的分析,并自动定位到运行缓慢的代码。这样就能帮助程序员尽快地调整应用程序的性能。TrueTime 支持 C++, JAVA, Visual Basic 语言环境。

(9) FailSafe

FailSafe 是 Visual Basic 语言环境下的自动错误处理和恢复工具,FailSafe 将插入额外的代码对你的程序进行插装,当程序执行时,FailSafe 通过这些插装的代码捕获、记录错误信息。

(10) Jcheck

Jcheck 是 DevPartner Studio 开发调试工具的一个组件, 使用事件调试技术,可以收集 Java程序运行中准确的实时信息。我们在 Java 程序中经常要使用线程,而关于线程的常见错误有死锁、系统崩溃、同步问题等。JCheck 通过监视和分析当前内存中所有线程的运行状况,找到出错的根源,并且可以定位到具体是程序中的哪个方法出错,错误位于程序的哪一行。

(11) TrueCoverage

TrueCoverage 是一个代码覆盖率统计工具,在开发过程中,对一个应用程序通过手工测试,总会有一 分代码功能没有被检测到,或者说逐个检测每一个函数的调用是相当费时间的;未被检测的代码我们不能保证它的可靠性,以后程序的失败可能往往就是由这 分未检测的代码造成的。现在我们可以用 TrueCoverage 来帮助我们解决这些问题,我们在测试程序时,每完成一次应用话路,TrueCoverage 就能够列出在这次对话中所有函数被调用次数、所占比率等,并可以直接定位到源代码,当然我们也可以合并多个应用话路来进行检测。所以说 TrueCoverage 能通过衡量和跟踪代码执行及代码稳定性, 帮助开发团队节省时间和改善代码可靠性。TrueCoverage 支持 C++, JAVA,Visual Basic 语言环境。

(12) SmartCheck

SmartCheck 是针对 Visual Basic 的主要的自动错误检测和调试工具。它能够自动检测和诊断 VB 运行时的错误,并将一些表达不清楚的错误信息转换为确切的错误描述。它的EventDebugging 特性为 Visual Basic 开发小组和独立的开发人员解决最棘 的问题提供了简便的方法。它可以进行致命错误的分析、兼容性检查、定位到源代码。

不是 Visual Basic 中所有的问题都是运行时或系统的错误。许多的问题来自于未预期的程序流程的结果。如果没有 EventDebugging,将问题分离出来是相当困难,甚至不可能的。当简单的动 比如设置控件的属性发生时,会触发一些编程人员想象不到的事件的发生,从而使的错误检测和调试边的更加复杂。SmartCheck 显示使用时的属性,方法和事件以便于将这些事件驱动的问题隔离出来。SmartCheck EventDebugging 跟踪事件以简化错误的定位。举个例子,SmartCheck 在事件被设置或只读时将其方法和属性全 显示,连同由这些事件触发的形式。

(13) CodeReview

对于 Visual Basic 开发人员来说,CodeReview 是最好的自动源代码分析工具,它对应用程序的组件、逻辑、Windows 和 Vb 自身潜在的数百个问题进行严格地源代码检查。CodeReview 分析的类型包括 Y2K 问题,逻辑错误,应用程序性能和可用性问题,Windows API 调用和标准一致性问题等。可以检测整个的 VB 工程或指定的模块,并能定制检错的种类;对检测的结果有详细的说明,提供帮助和推荐解决方案,而且能够直接的链接到源代码。CodeReview 系统还提供了两个子模块,一个是 Metrics:通过对 VB 工程(vbp)的执行,计算出代码的长度、复杂度、理解度、语言的使用等级、出错的可能性等数据;另一个是 Namer:它调用一个 VB 工程,自动并规则地对其中的对象重新命名,并备份原来没有规则命名的工程文件,使开发人员对程序能够有条理地管理。

声明: 本文由( 鲁智森也有文化 )原创编译,转载请保留链接: 常用软件测试工具介绍与分析

常用软件测试工具介绍与分析:等您坐沙发呢!

发表评论


QQ群互动

Linux系统与内核学习群:194051772

WP建站技术学习交流群:194062106

魔豆之路QR

魔豆的Linux内核之路

魔豆的Linux内核之路

优秀工程师当看优秀书籍

优秀程序员,要看优秀书!

赞助商广告

友荐云推荐