软件测试自动化及工具

  • 格式:doc
  • 大小:290.50 KB
  • 文档页数:9

下载文档原格式

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

软件测试自动化与软件测试工具

目录

一、软件自动化测试基础 (2)

1、1 软件自动化测试的产生 (2)

1、2软件自动化测试的概念 (2)

1、3当软件开发过程中具有下列情况时首先需要考虑引入自动化测试: (2)

二、自动化测试的作用和优势 (2)

2、1概述 (2)

2、1、1产生可靠的系统 (2)

2、1、2改进测试工作质量 (2)

2、1、3.减少测试工作量并加快测试进度 (3)

2、1、4友情提醒 (3)

三、自动化测试工具 (3)

3、1软件测试工具分类 (3)

3、1、1白盒测试工具 (4)

3、1、2黑盒测试工具 (5)

3、1、3测试管理工具 (5)

3、2自动化测试工具一览 (5)

3、2、1 Rational Robot (5)

3、2、2 WinRunner (6)

3、2、3 LoadRunner (6)

3、2、4 Parasoft C++ Test (7)

3、2、5 QACenter (7)

3、2、6 WebLoad (8)

3、2、7 Web Application Stress (WAS) Tool (8)

3、2、8 TestDirector (8)

四、附录 (9)

一、软件自动化测试基础

1、1 软件自动化测试的产生

随着计算机日益广泛的应用,计算机软件越来越庞大和复杂,软件测试的工作量也越来越大。随着人们对软件测试工作的重视,大量的软件测试自动化工具不断涌现出来,自动化测试能够满足软件公司想在最短的进度内充分测试其软件的需求,一些软件公司在这方面的投入,会对整个开发工作的质量、成本和周期带来非常明显的效果。

1、2软件自动化测试的概念

软件测试自动化就是通过测试工具或其他手段,按照测试工程师的预定计划对软件产品进行自动的测试,它是软件测试的一个重要组成部分,能够完成许多手工无法完成或者难以实现的一些测试工作。正确、合理地实施自动化测试,能够快速、全面地对软件进行测试,从而提高软件质量、节省经费、缩短产品发布周期。

自动化测试能够替代大量手工测试工作,避免重复测试,同时,它还能够完成大量手工无法完成的测试工作,如并发用户测试、大数据量测试、长时间运行可靠性测试等。

1、3当软件开发过程中具有下列情况时首先需要考虑引入自动化测试:

非常重要的测试

涉及范围很广的测试

对主要功能的测试

容易自动化的测试

很快有回报的测试

运行最频繁的测试

二、自动化测试的作用和优势

2、1概述

使用测试工具的目的就是要提高软件测试的效率和软件测试的质量。通常,自动化测试的好处有:

产生可靠的系统;

改进测试工作质量;

减少测试工作量并加快测试进度。

2、1、1产生可靠的系统

测试工作的主要目标一是找出缺陷,从而减少应用中的错误;另一个是确保系统的性能满足用户的期望。为了有效地支持这些目标,在开发生存周期的需求定义阶段,当开发和细化需求时则应着手测试工作。使用自动化测试可改进所有的测试领域,包括测试程序开发、测试执行,测试结果分析、故障状况和报告生成。它还支持所有的测试阶段,其中包括单元测试、集成测试、系统测试、验收测试与回归测试等。

通过使用自动化测试可获得的效果可归纳如下。

(1)需求定义的改进

(2)性能测试的改进

(3)负载/压力测试的改进

(4)高质量测量与测试最佳化

(5)改进与开发组人员之间的关系

(6)改进系统开发生存周期

2、1、2改进测试工作质量

通过使用自动化测试工具,可增加测试的深度与广度,改进测试工作质量。其具体好处可归

纳如下。

(1)改进多平台兼容性测试

(2)改进软件兼容性测试

(3)改进普通测试执行

(4)使测试集中于高级测试问题

(5)执行手工测试无法完成的测试

(6)重现软件缺陷的能力

(7)测试无需用户干预

2、1、3.减少测试工作量并加快测试进度

善于使用测试工具来进行测试,其节省时间并加快测试工作进度是毋庸置疑的,这也是自动化测试的主要优点。

表7-1列出了采用手工和自动化测试方式完成各测试步骤所需工作量的基准对比结果。该测试涉及1750个测试程序和700个错误。表7-1中的数字反映出通过测试自动化,测试工作总量减少75%。

表7-1 手工测试与自动化测试的情况比较

2、1、4友情提醒

软件自动化测试是软件测试技术的一个重要的组成部分,引入自动化测试可以提高软件质量,节省经费,缩短产品发布周期。

然而,测试工具本身的优势并不意味着使用测试工具就能成功,关键还是在于使用工具的人。很多刚拥有测试工具的人,经常过分夸大工具的功效,并投入太高的期望。

但是,工具只是提供了解决问题的一种手段而已。成功的测试自动化需有以下两个关键的因素。

①一个被很好理解的并且稳定的应用行为

②一个专注的、有着丰富技能的测试组,并且被分配了足够的时间和资源

三、自动化测试工具

3、1软件测试工具分类

根据测试方法的不同,自动化测试工具可以分为白盒测试工具、黑盒测试工具和测试管理工具。这些工具主要是Mercury Interactive(MI)、Segue、IBM/Rational、Compuware和Empirix

等公司的产品,而MI公司的产品占了主流。这些工具和软件开发过程中相关活动的关系如图1所示。

图1 测试工具与开发过程关系图

3、1、1白盒测试工具

白盒测试工具一般是针对代码进行测试,测试中发现的缺陷可以定位到代码级。根据测试工具的工作原理的不同,白盒测试工具又可以分为静态测试工具和动态测试工具。

(1)静态测试工具

静态测试就是在不执行程序的情况下分析软件的特性。因此,静态测试工具一般是对代码进行语法扫描,找出不符合编码规范的地方,根据某种质量模型评价代码的质量,生成系统的调用关系图等。静态测试工具直接对代码进行分析,不需要运行代码,也不需要对代码编译链接、生成可执行文件。

静态测试工具的代表有Telelogic公司的Logiscope软件、PR公司的PRQA软件。

(2)动态测试工具

动态测试直接执行被测程序以提供测试活动。因此,动态测试工具需要实际运行被测系统,并设置断点,向代码生成的可执行文件中插入一些监测代码,掌握断点这一时刻程序运行数据。

动态测试工具的代表有Compuware公司的DevPartner软件、Rational公司的Purify软件。常见的白盒测试工具,如表2、表3所示。

表2 Parasoft白盒测试工具集

表3 Compuware白盒测试工具集