软件测试工具综述

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件测试工具综述

作者:武东虎

来源:《硅谷》2013年第11期

摘要本文立足软件测试的基础提出了两种对其测试的工具进行分类的方式。从测试的方法进行分类的话可以有白盒和黑盒的工具进行测试;从测试的工程进行分类的话有负载的压力测试、功能方面的测试以及各种专用的测试工具等。最后引出了能进行自动化操作的测试工具以及该工具的性能优劣和其在实际应用中的方法。

关键词软件测试工具;分类;优劣性;选择方法

中图分类号:TP311 文献标识码:A 文章编号:1671-7597(2013)11-0000-00

在软件被投入实际的应用之前,一般要对其进行初期的测试以明确该软件的基本性能和存在的问题,并且对其进行及时的解决。不管专业技术人员采用多好的研发和管理技术来保证软件质量,都不能代替软件测试。人工测试代价比较昂贵,人员投入较大并且测试者做的是重复的劳动很容易产生精神疲劳从而导致错误的产生和测试盲点,有些问题在其他人看来很容易发现但是测试者却看不到,这个时候就常常要求得到自动支持。自动化测试,就是借助于一些测试工具来执行测试。

1 基于测试方法的测试工具的分类

1.1 白盒测试工具

自盒测试是在对源程序代码分析的基础上,提取有关软件的测试信息。因而,被测软件的编程语言、语言的版本都直接影响该类工具的开发。并且具有不同的测试原理,一般包括动态和静态的工具。

1.1.1 静态测试工具

属于静态类型的测试工具包括静态的分析工具以及支持评审过程的工具等。现在的市场上比较活跃的静态类型的测试工具主要有FailSafe、SQA ROBOT、PRQA、Macabe、Logiscope 等。这些工具都来自不同的著名公司分别是RA.TIONALPR、Macabe、TeleLogic等。并且其中最典型最杰出的为Logiscope。支持评审过程的分析工具能支持所有的评审过程中采用的辅助工具。

1.1.2 动态测试工具

动态测试工具工作的过程:以插桩的方式将一些主要的监测代码插入到由代码生成的可以执行的文件之中。这样该代码就可以执行对程序运行中的数据进行统计的工作。不同于静态的测试工具,动态测试工具执行的过程中需要程序呈现的是运行的状态。比较有代表性的测试工具包括DevPartner、Purify以及BounceChecker;他们分别来自Compuware公司、Rational公司以及Numega。

1.2 黑盒测试工具

黑盒测试的方式也被称作是对程序的功能进行测试,由于该方式不能够直接的看到程序运行的过程,所以只有采用黑盒的方式来测试程序中的错误。在利用该方式进行测试的时候,工作人员只能看到对软件的功能进行描述的文件,无法看到源代码。QACenter是一个黑盒测试的代表工具,它帮助所有的测试人员创建一个快速,可重用的测试过程。

2 自动测试工具

2.1 负载压力测试工具

负载的压力测试相关的工具主要的测试意图是对系统的有关性能以及可扩展性进行衡量,该工具可以对系统的行为和相关性能进行预测,并且是一种比较自动化的工具。测试的实际过程是在实际的负载过程中对系统的性能进行实时的测试并且找出存在的问题和原因。从而对其进行优化从而保证该系统的应用性能的完好和科学。在这类工具的支持下,企业能够大大的减少测试的时间并且减少运行的成本。

2.2 功能测试工具

功能测试工具通过自动录制、检测和回放用户的应用操作,将被测系统的输出记录下来,并且与规定的标准进行比较。以此来为不同的版本的软件性能和系统的运行情况进行测试。这样就可以在很大的程度上提高测试人员的工作效率。常见的对系统的功能进行测试的工具有QuickTest,TestPartner,WinRunner等。

2.3 专用测试工具

专用测试工具是指专门针对某一应用领域或是一些特殊用途的测试工具。如Web Service,与传统的软件相比,Web Service有许多独特的地方,从而导致Web Service测试面临更多困难,例如Web Service的开发环境与实际运行环境有很大的不同,分布式测试环境的多样性等等。而且,目前,Web Service的测试是一个越来越受关注的领域,出现了许多Web Service测试工具,主要有soapUl、TestMaker、Weblnject、Web Service Tester、SOATest等。

3 软件自动化测试的应用

3.1 自动化测试优点

自动化测试具有非常突出的优点:对于程序回归测试更方便,这也是自动化测试的主要用途之一,特别是在程序修改比较频繁的时候效果非常明显;可以执行手工测试困难或不可能达到的测试;测试的重复利用,由于自动测试通常使用的是自动化脚本技术,这样就可以只需要做较少的甚至是不修改就可以实现在不同的测试过程中使用相同的用例。减少错误,测试采用的是自动的方式,因此在对结果进行评价的时候就不会出现有来自测试工作人员的失误和疏忽的情况,这样就可以大大的减少误差。

3.2 自动化测试缺点

自动化测试没有思维,设计的好坏决定了测试的质量。所以人工测试也是发现软件缺陷最多的,而自动化测试发现的问题比手工测试要少的多。自动化测试软件本身就是一个产品,它在运行的时候有可能影响被测软件的性能。同时,自动化测试并不是简单的录制和回放,需要修改脚本、设计场景等,所以他对测试设计人员的要求很高。

4 总结

软件测试工具是实现软件测试技术的软件产品,对于多数软件测试来说都是一项重要的工具。本文着重对现有的软件测试工具从测试方法及测试功能上进行分类,并对,每一个类别进行了详细的论述,并以现有的代表软件测试工具对其说明。最后总结了自动化测试和人工测试对比所存在的优劣属性。

参考文献

[1]曹晓勇.软件测试工具的分类和使用[J].信息系统工程,2009(9).

[2]干晓鸣.软件自动化测试的合理应用[J].计算机应用与软件,2010(8).

[3]毛养红.软件测试技术在C++教学中的应用[J].中国校外教育,2010(12).

相关文档
最新文档