qileilove

blog已经转移至github,大家请访问 http://qaseven.github.io/

软件测试工具的比较和选择

摘要:

  随着软件测试的地位逐步提高,测试的重要性逐步显现,测试工具的应用已经成为了普遍的趋势。目前用于测试的工具已经比较多了,这些测试工具一般可分为:白盒测试工具、黑盒测试工具、性能测试工具,另外还有用于测试管理(测试流程管理、缺陷跟踪管理、测试用例管理)的工具。

  总的来说,测试工具的应用可以提高测试的质量、测试的效率。但是在选择和使用测试工具的时候,应该看到,在测试过程中,并不是所有的测试工具都适合我们使用,同时,有了测试工具、会使用测试工具并不等于测试工具真正能在测试中发挥作用。因此,要发挥测试工具的价值,必须根据公司的实际情况合理选择测试工具, 本文拟从测试工具的选择和使用方面着手,讲述一点个人的心得,仅供参考

  关键词:白盒测试工具集、黑盒测试工具集、测试管理工具集、自动化测试工具集

  一、白盒测试工具集

  白盒测试工具一般是针对代码进行测试,测试中发现的缺陷可以定位到代码级,根据测试工具原理的不同,又可以分为静态测试工具和动态测试工具。公司目前的测试水平尚不具备使用白盒测试工具进行代码测试的能力,这里只作简单介绍

  1、静态测试工具

  静态测试工具直接对代码进行分析,不需要运行代码,也不需要对代码编译链接,生成可执行文件。静态测试工具一般是对代码进行语法扫描,找出不符合编码规范的地方,根据某种质量模型评价代码的质量,生成系统的调用关系图等。静态测试工具的代表有Telelogic公司的Logiscope软件、PR公司的PRQA软件。

  2、动态测试工具

  动态测试工具与静态测试工具不同,动态测试工具的一般采用"插桩"的方式,向代码生成的可执行文件中插入一些监测代码,用来统计程序运行时的数据。其与静态测试工具最大的不同就是动态测试工具要求被测系统实际运行。

  动态测试工具的代表有Compuware公司的DevPartner软件、Rational公司的Purify系列等。

Parasoft白盒测试工具集

Compuware白盒测试工具集

Xunit白盒测试工具集



二、黑盒测试工具集

  黑盒测试工具适用于黑盒测试的场合,黑盒测试工具包括功能测试工具和性能测试工具。黑盒测试工具的一般原理是利用脚本的录制(Record)/回放(Playback),模拟用户的操作,

  然后将被测系统的输出记录下来同预先给定的标准结果比较。黑盒测试工具可以大大减轻黑盒测试的工作量,在迭代开发的过程中,能够很好地进行回归测试

  黑盒测试工具的代表有Rational公司的TeamTest、Robot,Compuware公司的QACenter,另外,专用于性能测试的工具包括有Radview公司的WebLoad、Microsoft公司的WebStress等工具。

主流黑盒功能测试工具集

主流黑盒性能测试工具集

  三、测试管理工具典型产品比较

  测试管理工具用于对测试进行管理。一般而言,测试管理工具对测试计划、测试用例、测试实施进行管理,并且测试管理工具还包括对缺陷的跟踪管理。

  测试管理工具的代表有Rational公司的Test Manager、Compureware公司的TrackRecord等软件。

  四、商业化自动测试工具比较


五、测试工具的选择

  面对如此多的测试工具,对工具的选择就成了一个比较重要的问题。我们在考虑选用工具的时候,建议从以下几个方面来权衡和选择。

  功能

  功能应该是我们最关注的内容,选择一个测试工具首先就是看它提供的功能。当然,这并不是说测试工具提供的功能越多就越好,在实际的选择过程中,适用才是根本。事实上,目前市面上同类的软件测试工具之间的基本功能都是大同小异,各种软件提供的功能也大致相同,只不过有不同的侧重点。除了基本的功能之外,以下的功能需求也可以作为选择测试工具的参考:

  报表功能;测试工具生成的结果最终要由人进行解释,而且,查看最终报告的人员不一定对测试很熟悉,因此,测试工具能否生成结果报表,能够以什么形势提供报表是需要考虑的因素。

  测试工具的集成能力;测试工具的引入是一个长期的过程,应该是伴随着测试过程改进而进行的一个持续的过程。因此,测试工具的集成能力也是必须考虑的因素,这里的集成包括两个方面的意思:首先,测试工具能否和开发工具进行良好的集成;其次,测试工具能够和其他测试工具进行良好的集成。

  操作系统和开发工具的兼容性;测试工具可否跨平台,是否适用于公司目前使用的开发工具,这些问题也是在选择一个测试工具时必须考虑的问题。

  价格

  除了功能之外,价格就应该是最重要的因素了。目前测试工具的价格普遍偏高,有的甚至是"天文数字",在这方面只能建议公司先使用网上盗版或破解的工具,但是测试的准确性得不到可靠得保证

  六、测试工具在实际中运用的瓶颈

  许多引入测试软件的公司并没有能够让测试软件发挥应有的作用,其主要原因我总结为三个方面:

  1、没有考虑到公司的实际情况,盲目引入测试工具

  首先要明确一点,并不是每种测试工具都适合公司目前的实际情况。一些公司怀着美好的愿望花了不小的代价引入测试工具,半年一年以后,测试工具却成了摆设,究其原因,就是没有能够考虑公司的现实情况,不切实际地期望测试工具能够改变公司的测试现状,从而导致了失败。建议:公司可以考虑先引入黑盒测试工具和测试管理工具。

  2、没有形成一个良好的使用测试工具的环境

  换句话说,就是没有能够形成一种机制让测试工具真正能够发挥作用。例如,白盒测试工具的一般使用场合是在单元测试阶段,而单元测试是由开发人员完成,如果没有流程来规范开发人员的行为,在项目进度压力比较大的情况下,开发人员很可能就会有意识地不使用测试工具,来逃避问题。在这种情况下,就必须形成一种有约束力的机制来强制对测试工具的使用。建议:将测试工具的使用明确定义进公司的开发流程,我认为是一种比较好的方式。

  3、没有进行有效的测试工具的培训

  测试工具的使用者必须对测试工具非常了解,在这方面,有效的培训是必不可少的。测试工具的培训是一个长期的过程,不是通过一两次讲课的形式就能达到良好的效果。而且,在实际的使用测试工具的过程中,测试工具的使用者可能还存在着这样那样的问题,这也需要有专人负责解决,否则的话,对于测试工具使用者的积极性是很大的打击。公司在进行测试工具的培训时,建议可以通过一系列的学习和交流,从针对开发高层的《测试工具基本概念培训》到针对测试工具实际使用者的《测试工具使用培训》,再到交流性质的《测试工具应用交流研讨会》,再到定期发出的《测试工具应用问答》,来提高目前测试工具的应用和测试人员的基本功

  七、总结

  综上所述目前公司在测试工具引入上应该抱着谨慎的态度,先试用共享或免费软件,待公司开发规模,质量管理力度,测试管理等达到一定深度时再考虑引入正版收费软件。其次,测试管理工具的引入优先与其他测试工具的引入,原因之一是测试管理手段的科学化,对测试工作具有指导与规范作用;其二,在目前公司独立测试从无到有逐步发展的里程中,找到适合公司自身特点的管理理念与方法显得更为迫切;其三,目前公司测试人员的水平对引入相对掌握难度较低的测试管理工具更能迅速上手;其四,目前共享或免费的测试管理工具可选择的余地较广,国产成熟产品也较多,且测试管理工具往往融合了过程管理的流程。


posted on 2013-06-20 10:54 顺其自然EVO 阅读(1862) 评论(0)  编辑  收藏 所属分类: 测试学习专栏


只有注册用户登录后才能发表评论。


网站导航:
 
<2013年6月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

导航

统计

常用链接

留言簿(55)

随笔分类

随笔档案

文章分类

文章档案

搜索

最新评论

阅读排行榜

评论排行榜