首页 / 专利库 / 软件 / 软件回归测试 / 一种回归测试自动化系统及方法

一种回归测试自动化系统及方法

阅读:419发布:2020-07-25

专利汇可以提供一种回归测试自动化系统及方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种回归测试自动化方法,包括:生成测试计划 框架 ,提交到测试计划库;搭建回归测试环境,生成测试环境配置、拓扑映射框架并提交到回归测试库;回归测试管理模 块 提取测试计划框架,生成测试套构建框架;试 套管 理模块根据测试套构建框架构建测试套构建策略,提取测试 用例 ,构建回归测试套提交给回归测试库;回归测试管理模块检测测试计划,启动测试运行调度器;测试运行调度器通知测试环境管理模块, 申请 测试资源;测试运行调度器调度回归测试套,并启动测试运行引擎;测试运行引擎执行回归测试套,并生成测试执行结果到运行结果库。本发明还公开了一种回归测试自动化系统。本发明能够减少人为干预,实现回归测试自动化。,下面是一种回归测试自动化系统及方法专利的具体信息内容。

1、一种回归测试自动化系统,包括测试环境单元,所述测试环境单元包 括被测设备和测试仪表,其特征在于,还包括测试管理执行单元和测试数据 库,所述测试管理执行单元包括:测试用例管理模、测试套管理模块、测 试环境管理模块、回归测试管理模块、测试运行调度器和测试运行引擎;所 述测试数据库包括:测试计划库、测试用例库、回归测试库和运行统计库;
其中,所述测试用例管理模块用于管理维护测试用例,以及根据测试套 管理模块的请求,将测试用例库中的测试用例发送给测试套管理模块;
所述测试套管理模块用于从回归测试管理模块获取测试套构建框架,构 建测试套构建策略,根据测试套构建策略通过测试用例管理模块从测试用例 库提取测试用例,构建回归测试套提交给回归测试库;
所述测试环境管理模块用于管理测试环境单元,生成测试环境配置及环 境拓扑并存储到回归测试库中;以及用于测试设备资源的分配与调度;
所述回归测试管理模块用于管理配置测试计划库,从测试计划库提取测 试计划框架,生成测试套构建框架存入测试计划库中,以及将所述测试套构 建框架发送给测试套管理模块;还用于检测测试计划,启动测试运行调度器;
所述测试运行调度器用于通知测试环境管理模块检测测试环境,申请测 试资源;还用于通过测试套管理模块调度回归测试套,以及根据回归测试管 理模块的指示启动测试运行引擎;
所述测试运行引擎用于执行所述回归测试套,并输出测试执行结果到运 行结果统计库。
2、如权利要求1所述的系统,其特征在于,所述测试用例管理模块还用 于测试用例框架的管理维护。
3、如权利要求1所述的系统,其特征在于,所述回归测试管理模块还用 于根据测试计划配置生成测试计划框架,提交到测试计划库。
4、如权利要求1所述的系统,其特征在于,所述回归测试管理模块还用 于回归测试套执行通过标准的制定,以及从运行统计库提取测试执行结果统 计分析和比对,回归测试套执行通过失败验证处理,以及测试报告的定义和 生成。
5、如权利要求1所述的系统,其特征在于,所述测试环境管理模块,用 于被测设备的配置管理包括:
A、初始配置:启用被测设备初始化状态执行测试用例;
B、检测并验证配置:检测被测设备是否正确响应,验证各种参数是否正 确配置;
C、清除配置:恢复被测设备到初始化状态或者默认设置,保证测试套运 行在稳定的设备状态中,从而保证测试结果的稳定性
所述测试环境管理模块用于测试仪表管理,包括:
a、测试仪表登陆有效性验证:验证测试仪表是否可以正常、正确登陆;
b、测试仪表端口可预留验证:验证测试仪表是否有端口预留、分配;
c、测试仪表清除配置:恢复测试仪表到初始化状态,保证测试仪表对被 测设备操作的稳定性。
6、如权利要求1所述的系统,其特征在于,
所述测试运行调度器用于调度回归测试套:测试运行调度器根据测试计 划,通过回归测试管理模块从回归测试库提取回归测试套;
所述测试运行调度器用于申请测试资源:当测试运行调度器调度回归测 试套前,首先做资源申请处理;当为当前回归测试套申请不到测试资源时, 测试运行调度器根据回归测试套优先级、险进行处理,或是推迟回归测试 套执行,或是抢夺资源;
所述测试运行调度器用于创建测试运行引擎:只要回归测试套具备并且 测试资源具备,测试运行调度器就会创建测试运行引擎,并管理、监控测试 运行引擎的执行进程
7、一种回归测试自动化方法,包括如下步骤:
(1)生成测试计划框架,提交到测试计划库;
(2)搭建回归测试环境,由测试环境管理模块生成测试环境配置、拓扑 映射框架并提交到回归测试库;
(3)回归测试管理模块从测试计划库提取测试计划框架,生成测试套构 建框架发送给测试套管理模块;
(4)试套管理模块根据测试套构建框架构建测试套构建策略,并根据测 试套构建策略通过测试用例管理模块从测试用例库提取测试用例,构建回归 测试套提交给回归测试库;
(5)回归测试管理模块检测测试计划,启动测试运行调度器;
(6)测试运行调度器通知测试环境管理模块,申请测试资源;测试运行 调度器通过测试套管理模块调度回归测试套,并启动测试运行引擎;
(7)测试运行引擎执行回归测试套,并生成测试执行结果到运行结果库。
8、如权利要求7所述的方法,其特征在于,所述步骤(1)中,由回归 测试管理模块根据测试计划配置生成测试计划框架,提交到测试计划库。
9、如权利要求7所述的方法,其特征在于,所述步骤(3)中,归测试 管理模块从测试计划库提取测试计划框架,根据测试需求、需求优先级、测 试风险、测试规模生成测试套构建框架。
10、如权利要求7所述的方法,其特征在于,所述测试套构建策略包括:
A、基于基线测试用例库,构建回归测试套;
B、基于风险构建回归测试套:选择最为重要的、关键的和可疑的测试, 而跳过非关键的、优先级别低或者高稳定的测试用例;
C、基于软件修改构建测试套:当软件的局部发生修改时,局限于被改变 的模块或接口构建回归测试套。
11、如权利要求7所述的方法,其特征在于,所述步骤(4)中,当回归 测试套构建完成,回归测试管理模块制定测试套通过标准。
12、如权利要求7所述的方法,其特征在于,所述步骤(7)执行之后, 还执行:回归测试管理模块分析、比对测试执行结果,验证该次测试是否达 到测试目的、测试标准,并生成测试报告存储到运行统计库中。

说明书全文

技术领域

发明涉及测试领域,尤其涉及一种回归测试自动化系统及方法

背景技术

在产品的研发过程中,在软件生命周期中的任何一个阶段,只要软件发 生了改变,就可能引入新的问题。软件的改变可能源于发现了错误并做了修 改,也有可能是因为在集成或维护阶段引入了新的模
当软件中隐含错误被发现时,由于开发者对错误理解的不够透彻,也可 能导致所做的修改只修正了错误的外在表现,而没有修复错误本身,从而造 成修改失败;软件修改还有可能产生副作用从而波及软件未被修改的部分而 产生新的问题,使本来正常工作的功能产生异常。同样,在有新功能加入系 统的时候,除了新加入的功能可能含有错误外,新功能还有可能对原有系统 带来影响。还有,对于各种补丁和升级程序,还要验证补丁和升级是否影响 系统的操作或性能。
因此,每当软件发生变化时,我们就必须重新测试现有的功能,以便确 定修改是否达到了预期的目的,检查修改是否损害了原有的正常功能。同时, 还需要补充新的测试用例来测试新的或被修改了的功能。为了验证修改的正 确性及其影响就需要进行回归测试。
回归测试作为软件生命周期的一个组成部分,在整个软件测试过程中占 有很大的比重,软件开发的各个阶段都会进行多次回归测试。当回归测试需 要反复进行,当测试者一次又一次地完成相同的测试时,这些回归测试将变 得步骤繁琐、重复,令人厌烦,而在大多数回归测试需要手工完成的时候尤 其如此,因此,有必要通过自动化方法来实现重复的、一致性的回归测试, 即回归测试自动化。
回归测试的重点是测试用例、测试脚本的管理,以及根据回归测试策略 选择测试用例进行的回归测试。随着测试项目的进展,测试用例、测试脚本 会不断增加。如果能自动管理这些测试用例、测试脚本,并且根据回归测试 策略自动组织这些测试资源,将会提高回归测试的效率。当回归测试要一次 又一次的反复进行时,自动化的回归测试组织与实施,无疑也会提高回归测 试的效率。
如上所述在软件变更时,需要通过回归测试进行功能验证。基于这种软 件变更实施回归测试的步骤一般如下:
步骤101,管理维护原基线测试用例库To,删除不再适用的测试用例; 选择对新版本依然有效的测试用例,建立一个新的基线测试用例库Tn;
步骤102,从基线测试用例库Tn提取测试用例,构建回归基线测试套Sb;
步骤103,识别软件被修改部分、包括模块、接口等,从Tn选择测试用 例,构建回归测试套Sm,用于测试软件被修改部分;
步骤104,如果基线测试套Sb不能达到所需覆盖要求,则补充测试用例, 并构建测试套Ss;
步骤105,冻结软件版本,制定回归测试标准,执行回归测试;将回归 测试发现的问题集中修改,集中回归。
分析上述步骤,诸如回归测试套构建,回归测试标准制定以及执行回归 测试等等,很多测试环节如果能够整合并自动化,无疑很大程度上会提高回 归测试效率。
基于回归测试的必要性和重要性,回归测试在当前IT测试领域应用相当 广泛,各个公司都有针对回归测试或自动化的研究与应用。
如中兴通讯股份有限公司的公开号为CN101178687专利申请软件回归 测试的方法》,介绍了一种软件功能回归测试的自动化实现方法,该方法特 色在于当软件发生更改时,能轻松进行原有功能的测试,并比较测试结果的 差异。但如何组织测试例、如何实现回归测试的自动化、以及如何实施回归 测试计划并没有描述。
又如华为技术有限公司的公开号为CN1527509的专利《一种测试方法》, 介绍了一种基于测试用例的自动化测试,具体步骤包括测试用例的生成,测 试用例的解析与设备参数配置,测试结果分析等。该方法可以实现回归测试, 但涉及到回归测试用例的组织、回归测试实施,以及回归测试相关自动化系 统并没有描述。
再如康佳集团股份有限公司的公开号为CN1952818的专利申请《自动检 测测试结果的程序单元测试方法》谈到了回归测试方法,但是只是局限在软 件的单元测试领域,对系统级软件回归测试、回归测试方法也没有描述。

发明内容

本发明要解决的技术问题就是克服现有技术缺陷,提出一种回归测试 自动化系统及方法,能够减少人为干预,实现回归测试自动化。
为了解决上述技术问题,本发明提供一种回归测试自动化系统,包括测 试环境单元,所述测试环境单元包括被测设备和测试仪表,还包括测试管理 执行单元和测试数据库,所述测试管理执行单元包括:测试用例管理模块、 测试套管理模块、测试环境管理模块、回归测试管理模块、测试运行调度器 和测试运行引擎;所述测试数据库包括:测试计划库、测试用例库、回归测 试库和运行统计库;
其中,所述测试用例管理模块用于管理维护测试用例,以及根据测试套 管理模块的请求,将测试用例库中的测试用例发送给测试套管理模块;
所述测试套管理模块用于从回归测试管理模块获取测试套构建框架,构 建测试套构建策略,根据测试套构建策略通过测试用例管理模块从测试用例 库提取测试用例,构建回归测试套提交给回归测试库;
所述测试环境管理模块用于管理测试环境单元,生成测试环境配置及环 境拓扑并存储到回归测试库中;以及用于测试设备资源的分配与调度;
所述回归测试管理模块用于管理配置测试计划库,从测试计划库提取测 试计划框架,生成测试套构建框架存入测试计划库中,以及将所述测试套构 建框架发送给测试套管理模块;还用于检测测试计划,启动测试运行调度器;
所述测试运行调度器用于通知测试环境管理模块检测测试环境,申请测 试资源;还用于通过测试套管理模块调度回归测试套,以及根据回归测试管 理模块的指示启动测试运行引擎;
所述测试运行引擎用于执行所述回归测试套,并输出测试执行结果到运 行结果统计库。
进一步地,所述测试用例管理模块还用于测试用例框架的管理维护。
进一步地,所述回归测试管理模块还用于根据测试计划配置生成测试计 划框架,提交到测试计划库。
进一步地,所述回归测试管理模块还用于回归测试套执行通过标准的制 定,以及从运行统计库提取测试执行结果统计分析和比对,回归测试套执行 通过失败验证处理,以及测试报告的定义和生成。
进一步地,所述测试环境管理模块,用于被测设备的配置管理包括:
A、初始配置:启用被测设备初始化状态执行测试用例;
B、检测并验证配置:检测被测设备是否正确响应,验证各种参数是否正 确配置;
C、清除配置:恢复被测设备到初始化状态或者默认设置,保证测试套运 行在稳定的设备状态中,从而保证测试结果的稳定性
所述测试环境管理模块用于测试仪表管理,包括:
a、测试仪表登陆有效性验证:验证测试仪表是否可以正常、正确登陆;
b、测试仪表端口可预留验证:验证测试仪表是否有端口预留、分配;
c、测试仪表清除配置:恢复测试仪表到初始化状态,保证测试仪表对被 测设备操作的稳定性。
进一步地,
所述测试运行调度器用于调度回归测试套:测试运行调度器根据测试计 划,通过回归测试管理模块从回归测试库提取回归测试套;
所述测试运行调度器用于申请测试资源:当测试运行调度器调度回归测 试套前,首先做资源申请处理;当为当前回归测试套申请不到测试资源时, 测试运行调度器根据回归测试套优先级、险进行处理,或是推迟回归测试 套执行,或是抢夺资源;
所述测试运行调度器用于创建测试运行引擎:只要回归测试套具备并且 测试资源具备,测试运行调度器就会创建测试运行引擎,并管理、监控测试 运行引擎的执行进程
为了解决上述技术问题,本发明还提供一种回归测试自动化方法,包括 如下步骤:
(1)生成测试计划框架,提交到测试计划库;
(2)搭建回归测试环境,由测试环境管理模块生成测试环境配置、拓扑 映射框架并提交到回归测试库;
(3)回归测试管理模块从测试计划库提取测试计划框架,生成测试套构 建框架发送给测试套管理模块;
(4)试套管理模块根据测试套构建框架构建测试套构建策略,并根据测 试套构建策略通过测试用例管理模块从测试用例库提取测试用例,构建回归 测试套提交给回归测试库;
(5)回归测试管理模块检测测试计划,启动测试运行调度器;
(6)测试运行调度器通知测试环境管理模块,申请测试资源;测试运行 调度器通过测试套管理模块调度回归测试套,并启动测试运行引擎;
(7)测试运行引擎执行回归测试套,并生成测试执行结果到运行结果库。
进一步地,所述步骤(1)中,由回归测试管理模块根据测试计划配置生 成测试计划框架,提交到测试计划库。
进一步地,所述步骤(3)中,归测试管理模块从测试计划库提取测试计 划框架,根据测试需求、需求优先级、测试风险、测试规模生成测试套构建 框架。
进一步地,所述测试套构建策略包括:
A、基于基线测试用例库,构建回归测试套;
B、基于风险构建回归测试套:选择最为重要的、关键的和可疑的测试, 而跳过非关键的、优先级别低或者高稳定的测试用例;
C、基于软件修改构建测试套:当软件的局部发生修改时,局限于被改变 的模块或接口构建回归测试套。
进一步地,所述步骤(4)中,当回归测试套构建完成,回归测试管理模 块制定测试套通过标准。
进一步地,所述步骤(7)执行之后,还执行:回归测试管理模块分析、 比对测试执行结果,验证该次测试是否达到测试目的、测试标准,并生成测 试报告存储到运行统计库中。
本发明的有益效果在于:提供一种回归测试的自动化系统架构,该架构 整合了包括测试计划的制定、测试套的管理、回归测试的实施以及趋势统计 分析等回归测试核心功能模块;并且在架构中整合了测试环境和测试执行引 擎的管理,为测试计划的有序执行和测试资源的合理分配提供了保证。并且 基于该系统提供了一种回归测试方法,该方法整合了回归测试过程中的主要 环节,减少诸多人为因素,有助于提高回归测试的自动化平和成效。
附图说明
图1是现有技术的回归测试流程图
图2是本发明实施例的测试用例、测试套以及测试计划的关系示意图;
图3是本发明实施例的回归测试自动化系统结构示意图;
图4是本发明实施例的回归测试自动化系统的具体实施示意图。

具体实施方式

下面结合附图及具体实施例对本发明进行详细说明。
首先对本发明所涉及的技术名词说明如下:
测试用例(Test Case,TC),指对被测的特定的软件产品进行测试任务 的描述,体现测试方案、方法、技术和策略。
测试用例框架(Test Case Profile,TCP)包括测试目标、测试环境、预 期结果、测试脚本等,并形成格式化文档,具体如下:
  TCP字段   描述   用例ID   检索测试用例,以及用例的测试脚本   用例名称   测试用例的功能性描述   用例版本   当前测试用例的版本描述   测试级别   测试用例优先级、风险描述   前置条件   测试用例执行前处理   后置条件   测试用例执行后处理   测试环境   测试用例所需要的拓扑逻辑   预期结果   测试环境稳定条件下测试用例的输出
测试逻辑(Test Logical),指测试用例执行的环境或场景,在这种场景 下,测试用例能够正确执行并得到预期结果;测试环境可用测试逻辑拓扑来 描述。
测试套(Test Suite),是依据产品特性、构建策略、软件模块或其他(如 基本功能、系统功能)来划分和组织的,是具有相同测试逻辑的若干测试用 例的集合。
测试计划(Test Scheme),就是定义一个测试项目的过程,以便能够正 确的度量和控制测试;测试计划一般包括测试目标、风险评估、鉴别和确定 测试需求的优先级、估计测试资源、制定规划等。
所述测试用例、测试套以及测试计划的关系可以概括为如图2所示。
在本发明实施例中,测试用例存储在测试用例库中,测试套(在本发明 中,为回归测试套)存储在回归测试库中,测试计划存储在测试计划库中。
如图3所示,本发明实施例的系统包括:测试管理执行单元、测试数据 库和测试环境单元;
所述测试管理执行单元包括:测试用例管理(Test Case Management, TCM)模块、测试套管理(Test Suite Management,TSM)模块、测试环境管 理(TestBed Manager,TBM)模块、回归测试管理(Regression Test Management, RTM)模块、测试运行调度器(Test Run Scheduler,TRS)以及测试运行引 擎(Test Run Engine,TRE);
所述测试数据库包括:测试计划库(Test Scheme Database,TSD)、测 试用例库(Test Case Database,TCD)、回归测试库(Regression Test Database, RTD)和运行统计库(Run Statistics Database,RSD);
所述测试环境单元包括:被测设备(Device Under Test,DUT)和测试仪 表。
其中,所述测试用例管理模块用于管理、维护自动化测试实施过程中所 开发的测试用例,并提交测试用例库统一管理、共享测试用例;还用于根据 测试套管理模块的请求,将测试用例库中的测试用例发送给测试套管理模块; 还用于测试用例框架的管理维护;
所述测试套管理模块负责从回归测试管理模块获取测试套构建框架 (Suite Building Profile,SBP),构建测试套构建策略;负责根据测试套构建 策略通过测试用例管理模块从测试用例库检索、分析、提取测试用例,构建 回归测试套,并提交到回归测试库;所述测试套构建策略(Suite Building Strategy,SBS),负责回归测试的规模、优先级和风险等控制;
所述测试环境管理模块用于管理测试环境单元,包括被测设备、测试仪 表等设备分配和资源调度,并生成测试环境配置(TestBed Configuration,TBC) 以及拓扑映射框架(Topology Mapping Profile,TMP)并存储到回归测试库中, 保证共享的测试环境中被测设备配置以及测试仪表资源预留按照调度有序进 行;所述测试环境配置负责拓扑映射框架定义;所述拓扑映射框架实现逻辑 拓扑映射到物理环境映射的映射,测试环境管理模块通过拓扑映射框架实现 对测试环境的管理、测试资源的分配;
所述回归测试管理模块用于测试计划库(Test Scheme Database,TSD) 的管理配置,可负责测试计划的制定、分析、调度和执行,以及测试计划框 架(Test Scheme Profile,TSP)的生成和配置,并提交到测试计划库;所述 回归测试管理模块用于从测试计划库提取所述测试计划框架,生成测试套构 建框架,并存储到测试计划库中;以及根据测试套管理模块的请求,从测试 计划库提取所述测试套构建框架,发送给测试套管理模块;回归测试管理模 块还用于检测测试计划,启动测试运行调度器;回归测试管理模块还用于回 归测试套执行通过标准的制定,以及从运行统计库提取测试执行结果统计分 析和比对,回归测试套执行通过失败验证处理,以及测试报告的定义和生成; 所述测试计划框架是实施回归测试的参考和依据,是回归测试成效的基本保 障;测试计划框架一般要解决如下几个问题:为何做(what)、如何做(how)、 谁来做(who)、何时做(when)、是否完成等问题;在本发明中,测试计 划框架可人工配置,也可由回归测试管理模块根据测试计划配置生成,再提 交到测试计划库中;回归测试管理模块提交测试计划框架到测试计划库,为 测试项目提供包括风险评估、鉴别和确定测试需求的优先级、估计测试资源 的需求量、测试规划、测试策略等信息;所述测试套构建框架是测试套构建 策略的依据,包括回归测试的规模、最终目标、优先级以及风险等;
所述测试运行调度器用于通知测试环境管理模块检测测试环境,申请测 试资源;测试运行调度器还用于通过测试套管理模块分析、调度回归测试套, 以及根据回归测试管理模块的指示启动测试运行引擎;测试运行调度器是测 试资源分配、运行调度方式(串行调度或并行调度)的管理者,而资源分配 与调度决策信息一般来自测试环境配置与测试计划框架等,这些信息都存储 在相应的数据库中,如回归测试库、测试计划数据库;所有调度是通过测试 环境管理模块以及回归测试管理模块辅助实现的;
所述测试运行引擎用于执行所述回归测试套,并输出执行结果到运行结 果统计库;测试运行引擎是测试环境的执行体,与被测设备、测试仪表实现 命令控制或各种测试操作,测试运行引擎可以是测试用例的执行单元,也可 是自动化测试工具;
所述测试计划库用于存储测试计划框架以及测试套构建框架;
所述回归测试库用于存储测试环境配置、测试拓扑映射以及回归测试套, 是测试套配置、构建,以及测试逻辑、测试环境管理的中心;
所述测试用例库用于存储测试用例以及测试用例框架,是测试用例集中 管理、配置、维护的中心,是测试项目的核心资源;
所述结果统计库用于存储测试执行结果、测试统计文件。
上述回归测试套构建策略进一步包括:
A、基于基线测试用例库,构建回归测试套;当选择全部基线测试用例 时,能最大限度降低遗漏回归测试错误的风险,但测试成本较高;
B、基于风险构建回归测试套;首先选择最为重要的、关键的和可疑的测 试,而跳过非关键的、优先级别低或者高稳定的测试用例。
C、基于软件修改构建测试套;当软件的局部发生修改时,可以局限于被 改变的模块或接口构建回归测试套,并保证尽可能覆盖到所有受影响的部分。
上述测试环境管理模块,用于被测设备的配置管理(Device Configuration Management,DCM),包括:
A、初始配置:启用被测设备初始化状态执行测试用例;
B、检测并验证配置:检测被测设备是否正确响应,验证各种参数是否正 确配置;
C、清除配置:恢复被测设备到初始化状态或者默认设置,保证测试套运 行在稳定的设备状态中,从而保证测试结果的稳定性;
上述测试环境管理模块用于测试仪表管理,包括:
A、测试仪表登陆有效性验证:验证测试仪表是否可以正常、正确登陆;
B、测试仪表端口可预留验证:验证测试仪表是否有端口预留、分配;
C、测试仪表清除配置:恢复测试仪表到初始化状态,保证测试仪表对被 测设备操作的稳定性。
上述测试运行调度器用于:
A、测试运行调度器负责回归测试套的调度:测试运行调度器根据测试 计划,通过回归测试管理模块从回归测试库获取回归测试套;如果回归测试 库部署在远程服务器上,则从服务器上获取回归测试套到本地;
B、测试运行调度器负责测试资源的申请:当测试运行调度器调度测试套 前,首先做资源申请处理;当为当前测试套申请不到测试资源时,测试运行 调度器根据回归测试套优先级、风险进行处理,或是推迟回归测试套执行, 或是抢夺资源;
C、测试运行调度器负责测试运行引擎的创建:只要回归测试套具备并且 测试资源具备,测试运行调度器就会创建测试运行引擎测试运行引擎,并管 理、监控测试运行引擎的执行进程。
如图4所示,本发明实施例的方法包括如下步骤:
步骤401,制定回归测试计划:无论是单元测试,还是集成测试,制定 回归测试计划是实施回归测试的起步点,一个好的测试计划是回归测试成效 的基本保障;
测试计划一般要解决如下几个问题:为何做(what)、如何做(how)、 谁来做(who)、何时做(when)、是否完成等问题;
配置好上述问题,生成测试计划框架,提交到测试计划库,在后面回归 测试具体实时过程中,也会不断更新测试计划库,以保证测试计划的正确实 施以及测试自动化的顺利进行;
在本发明中,可以由回归测试管理模块根据测试计划配置生成测试计划 框架,提交到测试计划库;也可直接手工配置测试计划框架,并提交到测试 计划库;
步骤402,搭建测试环境:测试环境包括各种网络设备、测试仪表、测 试工具,对这些设备的管理,是通过测试环境管理模块配置的;测试环境管 理模块生成测试环境配置,以及逻辑拓扑到物理拓扑的拓扑映射框架;对设 备的管理保存在回归测试库中,测试人员首先搭建好测试的物理环境,然后 从回归测试库中选择这些设备的逻辑描述,完成逻辑拓扑到物理环境的映射, 及拓扑映射框架;
为了保证在回归测试自动化过程中资源的合理、最大化分配,保证所有 资源有序调度,所有测试设备都应该由测试环境管理模块统一管理、分配和 调度;
测试套环境搭建,应该是“最小满足、最大利用”的原则,以保证其他 测试套有可以调度的资源,在提高自动化测试效率的同时,提高测试资源的 利用率;
步骤403,回归测试管理模块从测试计划库获取测试计划配置,以及测 试环境配置,根据测试需求、需求优先级、测试风险、测试规模等,搭建测 试套构建框架,将测试套构建框架存储到测试计划库中,并提交到测试套管 理模块;
试套构建框架包括回归测试的规模、测试启动、最终目标、优先级以及 风险;试套构建框架信息是测试计划框架的格式化描述,便于机器分析与处 理,试套构建框架还可以包括测试关键字、测试软件版本等重要信息;
步骤404,测试套管理模块根据测试套构建框架,决定测试套构建策略; 一般的构建策略包括基于基线用例库构建(选择基线用例库全部用例)、基 于风险构建(基于测试优先级)或基于软件修改构建;测试套的构建策略直 接决定了测试套的规模和回归测试的故障覆盖率;
步骤405~406,测试套管理模块根据测试套构建策略,通过测试用例管 理模块从测试用例库检索、分析、抽取测试脚本,构建测试套,并提交到回 归测试库;
由测试用例管理模块获取的测试脚本,可以是实际测试脚本文件,也可 以是脚本的索引,当测试用例库与执行引擎部署在同一台机器上时,脚本索 引方式可以提高测试套的生成效率以及脚本运行的效率;
步骤407,当测试套构建完成,回归测试管理模块制定测试套通过标准;
所述测试套通过标准是回归测试是否完成、达标的判断依据,可以由回 归测试管理模块根据历史经验默认设置,也可用户制定;测试套通过标准制 定,具体包括:
A、测试套执行成败的类型和标准可以是通过测试脚本的绝对数,可以 是通过脚本的百分比,还可以是某一具体的物理量,比如吞吐量;
B、当测试套执行完成,回归测试管理模块根据成败类型和标准,从运行 统计库获取统计信息,进行分析比对,给出测试套执行结果;
上述完成了一个测试套构建流程,从测试计划制定完成,测试环境搭建 后,就可以是自动化、智能的过程,包括回归测试套构建策略的控制、测试 套构建控制等等;这中间可以有人的参与,影响某个环节,但最终不会影响 这个流程;从上述流程可以看出,测试计划的制定的核心位置和良好计划制 定的重要性;
回归测试管理模块与测试套管理模块为执行机构提供执行元素;当执行 条件具备,调度机构测试运行调度器、执行机构测试运行引擎开始执行测试 套,具体如下:
步骤408,回归测试管理模块不断检测测试计划,当检测测试套执行命 令,便启动测试运行调度器,由测试运行调度器管理包括测试资源、测试套、 执行引擎等;回归测试管理模块启动测试运行调度器,可以设计为随机调度 模式(Random Schedule)或定时调度模式(Timer Schedule);
所述随机模式是一种手工启动测试运行调度器的模式,在任何时间,只 要创建了测试套,就可通过回归测试管理模块启动测试运行调度器;
所述定时模式指,当回归测试管理模块检测到定时计划,并分析当前测 试运行调度器状态。当测试运行调度器空闲,则启动测试运行调度器;否则 等待测试运行调度器调度完成,除非设置抢断调度模式,执行新的测试计划;
步骤409,测试运行调度器是自动化测试执行的核心,执行测试资源申 请、测试套调度、执行引擎创建等;
首先测试运行调度器负责测试套的调度:测试运行调度器根据测试计划, 通过回归测试管理模块从回归测试库提取回归测试套;如果回归测试库部署 在远程服务器上,则从服务器上获取回归测试套到本地;关于回归测试套的 调度,测试运行调度器会根据调度情况实时启动测试运行引擎,以缩短测试 套的执行时间,提高效率;
其次测试运行调度器负责测试资源的申请调度:当测试运行调度器调度 测试套前,会判断当前可以申请的测试设备、或者可以预留的仪表资源;当 为当前测试套申请不到测试资源时,测试运行调度器根据回归测试套优先级、 风险进行处理,或是推迟回归测试套执行,或是抢夺资源(一般为了保证测 试计划的有序执行,回归测试套只有在条件具备时才执行);
还有就是测试运行调度器对调度顺序的管理:测试运行调度器可以按照 串行执行或者并行执行的方式使得各种测试资源得到最大的优化利用;
步骤410~411,测试运行引擎执行测试套并生成测试结果,将测试结果 存储到运行统计库;在测试运行引擎被创建之前,测试运行调度器已经保证 一切资源就绪,测试运行调度器充分保证测试资源的有序调度和分配,为测 试运行引擎提供资源管理的后台保障;
在测试运行引擎运行过程中,测试环境管理模块负责设备配置、配置验 证,并保证回归测试套运行在稳定的设备环境中,从而保证测试运行引擎测 试的稳定性和准确性。
步骤412~413,测试运行引擎执行测试套完成,回归测试管理模块分析、 比对测试执行结果,验证该次测试是否达到测试目的、测试标准,并生成测 试报告存储到运行统计库中;
所述测试报告定义和生成,具体包括:
A、定义测试报告:回归测试报告内容可以是:整体回归测试概要、每 个测试套回归测试概要、回归测试详细报告(测试结果、配置信息等);
B、测试报告生成:回归测试管理模块根据测试报告定义形式,从运行统 计库获取测试执行结果,生成测试报告,可以是txt文件,可以是html文件 或其他。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的 情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形, 但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈