第12章 回归测试的实用技术.ppt
《第12章 回归测试的实用技术.ppt》由会员分享,可在线阅读,更多相关《第12章 回归测试的实用技术.ppt(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第12章章 回归测试的实用技术回归测试的实用技术回归测试(回归测试(Regression Testing)作为)作为软件生命周期的一个组成部分,在软件开发软件生命周期的一个组成部分,在软件开发的各个阶段都可能会进行若干次回归测试,的各个阶段都可能会进行若干次回归测试,回归测试在整个软件测试过程当中占有很大回归测试在整个软件测试过程当中占有很大的工作量比重。的工作量比重。本章重点讨论以下内容:本章重点讨论以下内容:回归测试概述回归测试概述 回归测试用例库的维护方法回归测试用例库的维护方法软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学 回归测试的方法回归测试的方法 回归测试的基本
2、过程回归测试的基本过程 总结回归测试的结果总结回归测试的结果 回归测试自动化的问题回归测试自动化的问题 回归测试实践总结回归测试实践总结 回归测试文档回归测试文档软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学12.1 回归测试概述回归测试概述 回归测试概述主要内容包括回归测试概述主要内容包括:什么是回归什么是回归测试、目的、范围、基本过程、人员、选择测试、目的、范围、基本过程、人员、选择有效的回归测试包、人工回归测试流程、自有效的回归测试包、人工回归测试流程、自动化自动回归测试流程、自动回归测试框架动化自动回归测试流程、自动回归测试框架和框架的技术特点,分别介绍如下。和框架的技
3、术特点,分别介绍如下。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学12.1.1 什么是回归测试什么是回归测试 只要软件发生修改,我们就必须重新测只要软件发生修改,我们就必须重新测试软件,以便确定修改的软件功能是否达到试软件,以便确定修改的软件功能是否达到了预期的目的,修改可能产生新的问题:了预期的目的,修改可能产生新的问题:可能导致软件未被修改的部分产生新的问题,可能导致软件未被修改的部分产生新的问题,使本来工作正常的功能产生错误;使本来工作正常的功能产生错误;在有新代码加入软件的时候,除了新加在有新代码加入软件的时候,除了新加入的代码中有可能含有错误外,新代码还有入的代码中
4、有可能含有错误外,新代码还有可能对原有的代码带来影响。可能对原有的代码带来影响。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学12.1.2 回归测试的目的回归测试的目的回归测试的目的是:确认软件经过一些小的回归测试的目的是:确认软件经过一些小的变更或修改后是否仍满足所有的需求。变更或修改后是否仍满足所有的需求。回归测试是重复测试,要求使用相同的方法,回归测试是重复测试,要求使用相同的方法,使用相同的测试用例和数据,在相同的环境使用相同的测试用例和数据,在相同的环境下进行测试。下进行测试。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学12.1.3 回归测试的范围回
5、归测试的范围 在进行回归测试的时候,必须决定回归在进行回归测试的时候,必须决定回归测试的范围,具体表现为:测试的范围,具体表现为:(1)测试所有修改或修正过的功能模块;测试所有修改或修正过的功能模块;(2)测试与被修改的模块相关的模块;测试与被修改的模块相关的模块;(3)测试所有新增加的功能模块;测试所有新增加的功能模块;(4)测试整个系统。测试整个系统。表现表现(1)、表现、表现(2)和表现和表现(3)中只进行中只进行了部分的回归测试,这样的测试是不健全的,了部分的回归测试,这样的测试是不健全的,因为在软件系统中,对本地代码的修改可能因为在软件系统中,对本地代码的修改可能导致整个系统产生副作
6、用。导致整个系统产生副作用。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学12.1.4 回归测试的基本过程回归测试的基本过程回归测试的基本过程如图回归测试的基本过程如图12-1所示。所示。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学图12-1回归测试的基本过程12.1.5 回归测试的策略回归测试的策略回归测试需要时间、经费和人力来计划、实回归测试需要时间、经费和人力来计划、实回归测试需要时间、经费和人力来计划、实回归测试需要时间、经费和人力来计划、实施和管理。为了尽可能有效地进行回归测试,需施和管理。为了尽可能有效地进行回归测试,需施和管理。为了尽可能有效地进
7、行回归测试,需施和管理。为了尽可能有效地进行回归测试,需要对回归测试选择相应的策略。要对回归测试选择相应的策略。要对回归测试选择相应的策略。要对回归测试选择相应的策略。(1 1)测试用例库的维护)测试用例库的维护)测试用例库的维护)测试用例库的维护为了保证测试用例库中测试用例的有效性,为了保证测试用例库中测试用例的有效性,为了保证测试用例库中测试用例的有效性,为了保证测试用例库中测试用例的有效性,必须对测试用例库进行维护。测试用例的维护主必须对测试用例库进行维护。测试用例的维护主必须对测试用例库进行维护。测试用例的维护主必须对测试用例库进行维护。测试用例的维护主要包括:要包括:要包括:要包括:
8、1)1)删除过时的测试用例删除过时的测试用例删除过时的测试用例删除过时的测试用例2)2)改进不受控制的测试用例改进不受控制的测试用例改进不受控制的测试用例改进不受控制的测试用例3)3)删除冗余的测试用例删除冗余的测试用例删除冗余的测试用例删除冗余的测试用例4 4)增添新的测试用例增添新的测试用例增添新的测试用例增添新的测试用例软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学12.1.6 回归测试人员回归测试人员 在回归测试过程当中,测试过程由一个在回归测试过程当中,测试过程由一个测试经理(或组长)来监控测试工作的各个测试经理(或组长)来监控测试工作的各个细节。而回归测试经常与系统
9、测试和验收测细节。而回归测试经常与系统测试和验收测试相关联,所以由测试经理(或组长)负责,试相关联,所以由测试经理(或组长)负责,确保选择合适的测试技术和在合理的质量控确保选择合适的测试技术和在合理的质量控制中执行充分的回归测试。制中执行充分的回归测试。在回归测试工作中,回归测试人员将设在回归测试工作中,回归测试人员将设计并实现测试新的扩展或增强部分所需的新计并实现测试新的扩展或增强部分所需的新测试用例,可结合自动化测试工具修改现有测试用例,可结合自动化测试工具修改现有的测试数据。的测试数据。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学12.1.7 选择有效的回归测试包选择有
10、效的回归测试包在软件测试中,测试用例库可能变得相在软件测试中,测试用例库可能变得相当大,每次回归测试都重新运行完整的测试当大,每次回归测试都重新运行完整的测试包变得不切实际,有时测试组不得不选择一包变得不切实际,有时测试组不得不选择一个缩减的、有效的回归测试包来完成回归测个缩减的、有效的回归测试包来完成回归测试。试。当测试组选择缩减的回归测试包时,当测试组选择缩减的回归测试包时,要删除部分测试用例,删除哪些部分测试用要删除部分测试用例,删除哪些部分测试用例而不会让回归测试的意图遭到破坏。例而不会让回归测试的意图遭到破坏。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学12.1.8
11、 人工回归测试流程人工回归测试流程人工回归测试流程如图人工回归测试流程如图12-2所示。所示。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学如图12-2人工回归测试流程12.1.9 自动化自动回归测试流程自动化自动回归测试流程自动化自动回归测试流程如图自动化自动回归测试流程如图12-3所示。所示。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学图12-3自动化自动回归测试流程12.1.10 自动回归测试框架、作用和框自动回归测试框架、作用和框架的技术特点架的技术特点1自动回归测试框架自动回归测试框架 自动回归测试框架如图自动回归测试框架如图12-4所示。所示。软件
12、测试技术研究组软件测试技术研究组 中国信息大学中国信息大学图图12-412-4 自动回归测试框架自动回归测试框架软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学12.2 软件测试的相关知识概述软件测试的相关知识概述 软件测试项目组在进行测试的过程中会将所用软件测试项目组在进行测试的过程中会将所用软件测试项目组在进行测试的过程中会将所用软件测试项目组在进行测试的过程中会将所用到的测试用例保存到到的测试用例保存到到的测试用例保存到到的测试用例保存到“测试用例库测试用例库测试用例库测试用例库”中,并进行中,并进行中,并进行中,并进行维护,回归测试用例库的维护方法如下。维护,回归测试用例
13、库的维护方法如下。维护,回归测试用例库的维护方法如下。维护,回归测试用例库的维护方法如下。12.2.1 删除过时的测试用例删除过时的测试用例 实用的测试用例是经过长期的工作积累而成的,实用的测试用例是经过长期的工作积累而成的,实用的测试用例是经过长期的工作积累而成的,实用的测试用例是经过长期的工作积累而成的,但是随着项目的不同,使用环境的不同,原来成但是随着项目的不同,使用环境的不同,原来成但是随着项目的不同,使用环境的不同,原来成但是随着项目的不同,使用环境的不同,原来成功的测试用例可能不适应新的环境,需要对原有功的测试用例可能不适应新的环境,需要对原有功的测试用例可能不适应新的环境,需要对
14、原有功的测试用例可能不适应新的环境,需要对原有的测试用例进行修改和删除。删除不是一味清除的测试用例进行修改和删除。删除不是一味清除的测试用例进行修改和删除。删除不是一味清除的测试用例进行修改和删除。删除不是一味清除原有测试用例,而是对原有的测试用例进行加工原有测试用例,而是对原有的测试用例进行加工原有测试用例,而是对原有的测试用例进行加工原有测试用例,而是对原有的测试用例进行加工改造,使之适应新的应用项目。改造,使之适应新的应用项目。改造,使之适应新的应用项目。改造,使之适应新的应用项目。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学12.2.2 改进不受控的测试用例改进不受控
15、的测试用例 在测试用例库中,有的测试用例是可重复并且在测试用例库中,有的测试用例是可重复并且在测试用例库中,有的测试用例是可重复并且在测试用例库中,有的测试用例是可重复并且是可控制的,但是有的测试用例不是可控制的是可控制的,但是有的测试用例不是可控制的是可控制的,但是有的测试用例不是可控制的是可控制的,但是有的测试用例不是可控制的(有些对输入或运行状态十分敏感的测试用例是(有些对输入或运行状态十分敏感的测试用例是(有些对输入或运行状态十分敏感的测试用例是(有些对输入或运行状态十分敏感的测试用例是不容易重复而且是难以控制的,会影响回归测试不容易重复而且是难以控制的,会影响回归测试不容易重复而且是
16、难以控制的,会影响回归测试不容易重复而且是难以控制的,会影响回归测试的效率),需要进行改进,使其达到可重复和可的效率),需要进行改进,使其达到可重复和可的效率),需要进行改进,使其达到可重复和可的效率),需要进行改进,使其达到可重复和可控制的要求。控制的要求。控制的要求。控制的要求。12.2.3 删除冗余的测试用例删除冗余的测试用例 在回归测试当中,有些测试用例随着项目的开在回归测试当中,有些测试用例随着项目的开在回归测试当中,有些测试用例随着项目的开在回归测试当中,有些测试用例随着项目的开展,难免会出现冗余(存在两个或者多个测试用展,难免会出现冗余(存在两个或者多个测试用展,难免会出现冗余(
17、存在两个或者多个测试用展,难免会出现冗余(存在两个或者多个测试用例针对一组相同的输入和输出进行测试),所以例针对一组相同的输入和输出进行测试),所以例针对一组相同的输入和输出进行测试),所以例针对一组相同的输入和输出进行测试),所以需要定期的整理、维护测试用例库,将冗余的用需要定期的整理、维护测试用例库,将冗余的用需要定期的整理、维护测试用例库,将冗余的用需要定期的整理、维护测试用例库,将冗余的用例删除掉,并保存到回归测试用例库中,从而提例删除掉,并保存到回归测试用例库中,从而提例删除掉,并保存到回归测试用例库中,从而提例删除掉,并保存到回归测试用例库中,从而提高测试用例库的高效性和可用性。高
18、测试用例库的高效性和可用性。高测试用例库的高效性和可用性。高测试用例库的高效性和可用性。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学12.2.4 增添新的测试用例增添新的测试用例 测试用例随着应用的环境、功能、性能测试用例随着应用的环境、功能、性能的不同,原有的测试用例库中的测试用例不的不同,原有的测试用例库中的测试用例不能满足回归测试的要求,需要添加新的测试能满足回归测试的要求,需要添加新的测试用例,如果某个程序段、构件或关键的接口用例,如果某个程序段、构件或关键的接口发生了变化,那么应该开发新测试用例重新发生了变化,那么应该开发新测试用例重新对其进行测试,并将新开发的测试
19、用例合并对其进行测试,并将新开发的测试用例合并到测试用例库中。到测试用例库中。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学12.3 测试的目的和原则测试的目的和原则 常用的回归测试的方法如下:常用的回归测试的方法如下:常用的回归测试的方法如下:常用的回归测试的方法如下:12.3.1 再测试全部用例再测试全部用例 把测试用例库的全部测试用例组成回归测试包把测试用例库的全部测试用例组成回归测试包把测试用例库的全部测试用例组成回归测试包把测试用例库的全部测试用例组成回归测试包进行测试,这是一种比较安全的方法,再测试全进行测试,这是一种比较安全的方法,再测试全进行测试,这是一种比较安
20、全的方法,再测试全进行测试,这是一种比较安全的方法,再测试全部用例具有最低的遗漏回归错误的风险,但测试部用例具有最低的遗漏回归错误的风险,但测试部用例具有最低的遗漏回归错误的风险,但测试部用例具有最低的遗漏回归错误的风险,但测试时间、人员、设备、和经费成本最高。全部再测时间、人员、设备、和经费成本最高。全部再测时间、人员、设备、和经费成本最高。全部再测时间、人员、设备、和经费成本最高。全部再测试几乎可以应用到任何情况下,基本上不需要进试几乎可以应用到任何情况下,基本上不需要进试几乎可以应用到任何情况下,基本上不需要进试几乎可以应用到任何情况下,基本上不需要进行分析和重新开发,但是随着开发工作的
21、进展,行分析和重新开发,但是随着开发工作的进展,行分析和重新开发,但是随着开发工作的进展,行分析和重新开发,但是随着开发工作的进展,测试用例不断增多,重复原先所有的测试将带来测试用例不断增多,重复原先所有的测试将带来测试用例不断增多,重复原先所有的测试将带来测试用例不断增多,重复原先所有的测试将带来很大的工作量,往往超过了预算和进度。很大的工作量,往往超过了预算和进度。很大的工作量,往往超过了预算和进度。很大的工作量,往往超过了预算和进度。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学12.3.2 基于风险进行测试基于风险进行测试 从测试用例库中选择测试用例进行回归。这种从测试
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第12章 回归测试的实用技术 12 回归 测试 实用技术
限制150内