主流软件测试工具比较

发表于:2009-03-11来源:作者:点击数: 标签:软件测试工具主流
随着 软件测试 的地位逐步提高,测试的重要性逐步显现, 测试工具 的应用已经成为了普遍的趋势。目前用于测试的工具已经比较多了,这些测试工具一般可分为 白盒测试 工具、 黑盒测试 工具、 性能测试 工具,另外还有用于 测试管理 , 测试流程 管理、 缺陷 跟
随着软件测试的地位逐步提高,测试的重要性逐步显现,测试工具的应用已经成为了普遍的趋势。目前用于测试的工具已经比较多了,这些测试工具一般可分为白盒测试工具、黑盒测试工具、性能测试工具,另外还有用于测试管理测试流程管理、缺陷跟踪管理、测试用例管理)的工具。

  总的来说,软件测试工具的应用可以提高测试的质量、测试的效率。但是在选择和使用测试工具的时候,我们也应该看到,在测试过程中,并不是所有的测试工具都适合我们使用,同时,有了测试工具、会使用测试工具并不等于测试工具真正能在测试中发挥作用。

  一、JTEST

  1、简介:

  jtest是parasoft公司推出的一款针对java语言的自动化白盒测试工具,它通过自动实现java的单元测试和代码标准校验,来提高代码的可靠性Jtest先分析每个java类,然后自动生成junit测试用例并执行用例,从而实现代码的最大覆盖,并将代码运行时未处理的异常暴露出来;另外,它还可以检查以DbC(Design by Contract)规范开发的代码的正确性。用户还可以通过扩展测试用例的自动生成器来添加更多的junit用例。Jtest还能按照现有的超过350个编码标准来检查并自动纠正大多数常见的编码规则上的偏差,用户可自定义这些标准,通过简单的几个点击,就能预防类似于未处理异常、函数错误、内存泄漏、性能问题、安全隐患这样的代码问题。

  2、优势:

  1)使预防代码错误成为可能,从而大大节约成本,提高软件质量和开发效率

  2)使单元测试——包括白盒、黑盒以及回归测试成为可能

  3)使代码规范检查和自动纠正成为可能

  4)鼓励开发团队横向协作来预防代码错误

  3、特征:

  1)通过简单的点击,自动实现代码基本错误的预防,这包括单元测试和代码规范的检查

  2)生成并执行junit单元测试用例,对代码进行即时检查

  3)提供了进行黑盒测试、模型测试和系统测试的快速途径

  4)确认并阻止代码中不可捕获的异常、函数错误、内存泄漏、性能问题、安全弱点的问题

  5)监视测试的覆盖范围

  6)自动执行回归测试

  7)支持DbC编码规范

  8)检验超过350个来自java专家的开发规范

  9)自动纠正违反超过160个编码规范的错误

  10)允许用户通过图形方式或自动创建方式来自定义编码规范

  11)支持大型团队开发中测试设置和测试文件的共享

  12)实现和IBM Websphere Studio /Eclipse IDE 的安全集成

  4、价格:昂贵

  二、JMETER

  1、简介:

  JMeter是Apache组织的开放源代码项目,它是功能和性能测试的工具,100%的用java实现。使用JMeter进行性能测试

  2、特征:

  JMeter可以用于测试静态或者动态资源的性能(文件、Servlets、Perl脚本、java对象、数据库和查询、ftp服务器或者其他的资源)。JMeter用于模拟在服务器、网络或者其他对象上附加高负载以测试他们提供服务的受压能力,或者分析他们提供的服务在不同负载条件下的总性能情况。你可以用JMeter提供的图形化界面分析性能指标或者在高负载情况下测试服务器/脚本/对象的行为。

  3、价格:未知

  三、JUNIT

  1、简介:

  JUnit是一个开源java测试框架,它是Xuint测试体系架构的一种实现。在JUnit单元测试框架的设计时,设定了三个总体目标,第一个是简化测试的编写,这种简化包括测试框架的学习和实际测试单元的编写;第二个是使测试单元保持持久性;第三个则是可以利用既有的测试来编写相关的测试。

  2、优势:

  2.1)junit是完全Free的。

  2.2)使用方便。在你提升程序代码的品质时JUnit测试仍允许你更快速的撰写程序

  那听起来似乎不是很直觉,但那是事实。当你使用JUnit撰写测试,你将花更少的时间除虫,同时对你程序代码的改变更 俱有信心。这个信心让你更积极重整程序代码并增加新的功能。没有测试,对于重整及增加新功能你会变得没有信心;因为你不知道有甚么东西会破坏产出的结果。采用一个综合的测试系列,你可以在改变程序代码之后快速的执行多个测试并对于你的变动并未破坏任何东西感到有信心。在执行测试时如果发现臭虫,原始码仍然清楚的在你脑中,因此很容易找到臭虫。在JUnit中撰写的测试帮助你以一种极 大(extreme)的步伐撰写程序及快速的找出缺点。2.3)JUnit非常简单撰写测试应该很简单--这是重点!如果撰写测试太复杂或太耗时间,便无法要求程序设计师撰写测试。使用JUnit你可以快速的撰写测试并检测你的程序代码并逐 步随着程序代码的成长增加测试。只要你写了一些测试,你想要快速并频繁的执行测试而不至于中断建立设计及开发程序。使用JUnit执行测试就像编译你的程序代码那么容易。事实上,你应该执行编译时也执行测试。编译是检测程序代码的语法而测试是检查程序代码的完整性(integrity)。

  2.4)JUnit测试检验其结果并提供立即的回馈。 如果你是以人工比对测试的期望与实际结果那么测试是很不好玩的,而且让你的速度慢下来。JUnit测试可以自动执行并且检查他们自己的结果。当你执行测试,你获得简单且立即的回馈; 比如测试是通过或失败。而不再需要人工检查测试结果的报告。

  2.5)JUnit测试可以合成一个测试系列的层级架构。 JUnit可以把测试组织成测试系列;这个测试系列可以包含其它的测试或测试系列。JUnit测试的合成行为允许你组合多个测试并自动的回归(regression)从头到尾测试整个测试系列。你也可以执行测试系列层级架构中任何一层的测试。

  2.6)撰写JUnit测试所费不多。 使用Junit测试框架,你可以很便宜的撰写测试并享受由测试框架所提供的信心。撰写一个测试就像写一个方法一样简单;测试是检验要测试的程序代码并定义期望的结果。这个测试框架提供自动执行测试的背景;这个背景并成为其它测试集合的一部份。在测试少量的投资将持续让你从时间及品质中获得回收。

 

原文转自:http://www.ltesting.net