软件测试工具的发展

    作者:课课家教育更新于: 2016-06-28 18:34:49

      一、软件测试工具

         软件测试工具,就是通过一些工具能够使软件的一些简单问题直观的展现在读者的面前,这样能使测试人员更好的找出软件错误的所在。软件测试工具分为自动化软件测试工具和测试管理工具。其存在的价值是为了提高测试效率,用软件来代替人工输入。

    软件测试工具的发展_软件测试_测试工具_课课家

      软件测试是软件工程中的一个重要过程,也是保证软件质量的重要手段。随着软件测试的地位在软件开发过程中逐步提高,重要性逐步显现,测试工具的应用也已经成为了普遍的趋势。

      目前用于测试的工具比较多,基本上覆盖了整个测试周期。其中国际主流的HP系列测试工具、IBM系列测试工具、Segue系列测试工具及Compuware系列测试工具占据了市场的90%以上。按照测试方法及测试目的,测试工具又可分为:白盒测试工具、黑盒测试工具、测试管理工具等。

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

      目前普遍使用的该类测试工具主要有Parasoft公司的Jtest、Jcontract、C++Test,Compuware公司的Bounds Checker、TrueTime、Fail Safe等,这类工具可以对C/C++、java等语言的软件源代码进行静态分析,内置标准的编码规则检查,以及功能确认、接口测试、覆盖率分析、性能分析等。

      2.黑盒测试工具:适用于黑盒测试的场合,黑盒测试工具包括功能测试工具和系统测试工具。黑盒测试工具的一般原理是利用脚本的录制和回放,模拟用户的操作,然后将被测系统的输出记录下来同预先给定的标准结果比较。黑盒测试工具可以大大减轻黑盒测试的工作量,在迭代开发的过程中,能够很好地进行回归测试。

      目前常见的功能测试工具有HP公司的Win runner、Quick Test Professional,IBM公司的Rational Functional Tester,Segue公司的Silk Test,Compuware公司的QA Run等,这类工具主要为用户提供了符合所有主要应用软件环境的功能测试和回归测试的自动化测试功能。

      常见的性能测试工具有HP公司的Load Runner,IBM公司的Rational Performance Tester,Segue公司的Silk Performer,Compuware公司的QALoad等,这类工具主要通过模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,帮助测试人员和性能工程师验证系统的性能。

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

      常用的测试管理工具主要有HP公司的Quality Center、IBM公司的Rational Test Manager,Segue公司的Silk Central Test Manager等。

      除了上述测试工具外,还有一些专用的测试工具,例如,针对数据库测试的Test Bytes,对应用性能进行优化的Eco Scope等。

      二、软件测试工具的发展

      近年来,随着测试技术的逐步发展,加上测试工作者及测试厂商的努力,测试工具在软件行业中得到了较为广泛的应用。在2009年下半年由工业和信息化部组织的全国范围内对软件企业所进行的调研数据来看,80%以上的软件企业都使用了自动化测试技术。

      虽然软件测试工具得到了很大的发展,但就工具的使用情况来看,目前大多数公司是使用性能测试工具进行性能测试。由于国内的软件开发过程不是很规范,软件产品相对不够成熟,大多数软件往往不具备自动化功能测试工具应用的条件。因此,功能测试工具大规模的应用还需要一定的时间。

      据山东省软件评测中心多年科研及实践分析,未来软件测试工具发展将呈现以下趋势:传统的软件测试生命周期仍在指导着当前软件测试的组织和实施,人们对于软件测试过程模型的研究并没有革命性的改变,自动化测试从技术到工具还没有取得与其宣传相匹配的实际功效。如何解决“完善的测试用例、更快的开始并结束测试、更多的报告软件缺陷”这些问题之间的关系,将是未来测试技术发展的重点。

      在此基础上,现有的测试工具也将进行更新换代。下一代的测试工具需要内嵌高级的测试编辑器,并通过这个编辑器来支持界面测试的自动完成功能以及测试代码的重构和分析吗?它需要将测试结果可视化吗?或者以自学习的方式来生成测试用例?

      随着软件行业的发展,大量的新技术在软件开发中得到应用。为了满足日益复杂的软件系统的测试需要,软件测试技术也随之不断的发展,越来越系统化,越来越专业化,同时软件测试工具也将在以下方面得到进一步的发展:

      1.分布式测试工具:随着网络技术的不断发展,大量分布式系统被部署在网络中,常见的如Web应用、Web Service等。分布式系统不同于一般软件系统,它通常由物理分布的多个子系统组成,这些子系统通过相互间的协作完成计算任务,具有物理分布、并发访问、时序敏感、平台异构等特点。

      此外,分布式系统中的诸多子系统在触发方式、工作方式等方面往往也不属于同一类型,比如,通过网络协议传递消息的子系统和利用本地接口进行方法调用的子系统等。因此,对分布式系统的测试也不同于一般软件系统的测试,需要采用分布式测试工具。随着越来越多的领域活动依赖于分布式应用,分布式测试将受到人们更大的关注,测试系统实现技术也将不断发展成熟,分布式测试工具将成为下一步测试工具的重点发展方向。

      2.云测试工具:云测试是基于云计算的一种新型测试方案,云计算通过网络以按需、易扩展的方式向用户交付所需的资源,包括基础设施、应用平台、软件功能等服务。

      作为软件测试工具(包括功能测试工具、性能测试工具等)服务商提供的测试平台,软件开发企业在其平台上进行相关自动化测试、不再在本地计算机上安装和使用这些工具。这种无须本地安装和配置测试环境,在远程测试平台上进行测试的方式被称作云测试。目前云测试平台还处于实验阶段,但随着云计算技术的逐步发展,云测试技术也将不断发展完善。

      3.安全性测试工具:安全性测试工具以自动化或半自动化的方式验证系统安全功能运行是否正确、安全机制是否有效和查找潜在的安全漏洞。随着计算机网络的迅速发展和软件的广泛应用,软件的安全性己经成为备受关注的一个方面,渐渐融入我们的生活,成为关系到金融、电力、交通、医疗、政府以及军事等各个领域的关键问题。

      软件安全漏洞造成的重大损失,以及正在不断增长的漏洞数量,使人们开始深刻认识到软件安全的重要性。随着安全性测试技术的深入研究,安全性测试工具也将是测试工具的重点发展方向。

      三、关于IT LAB软件测试实验室

      IT LAB软件测试实验室是国内最专业的软件行业服务供应商之一,致力于Web项目开发、软件测试外包服务及为客户提供整体解决方案和IT行业各类就业培训。公司主要成员均来自IBM、Microsoft、Sina、Symantec等知名企业,并拥有经验丰富的技术团队,技术团队成员平均拥有7年的开发、测试及项目管理经验。公司自成立以来先后与中石化、磊元科技、至德迅通等各行业多家公司合作,服务范围涉及石油、零售、医疗、金融等行业并得到了客户的一致好评。公司所提供的软件外包服务包括软件开发、测试、客户化及本地化和应用开发及维护;并支持在岸、离岸和混合等外包模式。依托公司的各类项目经验以及强大的技术团队,利用自身优势在传统培训模式的基础上进行创新、突破,打造了IT LAB就业培训品牌。

      测试管理工具就是为了复用测试用例,提高软件测试的价值。一个好的软件测试工具和测试管理工具结合起来使用将会使软件测试效率大大的提高。

课课家教育

未登录