CN110825645A - 一种流水线式全流程自动化测试方法 - Google Patents

一种流水线式全流程自动化测试方法 Download PDF

Info

Publication number
CN110825645A
CN110825645A CN201911097063.2A CN201911097063A CN110825645A CN 110825645 A CN110825645 A CN 110825645A CN 201911097063 A CN201911097063 A CN 201911097063A CN 110825645 A CN110825645 A CN 110825645A
Authority
CN
China
Prior art keywords
test
tested
testing
environment
detected
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911097063.2A
Other languages
English (en)
Inventor
张弛
吕鑫
史建友
刘超
张瑞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casco Signal Beijing Ltd
Original Assignee
Casco Signal Beijing Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casco Signal Beijing Ltd filed Critical Casco Signal Beijing Ltd
Priority to CN201911097063.2A priority Critical patent/CN110825645A/zh
Publication of CN110825645A publication Critical patent/CN110825645A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种流水线式全流程自动化测试方法,该方法包括步骤一:获取待测对象,并对待测对象进行哈希值校验;步骤二:对待测对象的测试环境进行部署;步骤三:利用测试工具对待测对象进行测试,并得到测试结果;步骤四:对测试环境进行清理,恢复至对待测对象的测试环境进行部署前的状态,并检测是否还有新的测试任务,若有新的测试任务,则跳转步骤一,若无新的测试任务,结束测试流程。本发明展示的流水线式的测试活动全流程自动化方法,可以实现测试全流程自动化,各个环节自动衔接,整个测试活动无需人员参与,极大的提升了测试活动自动化覆盖率,提升了测试效率和执行速度,有效避免了人工误操作带来的测试风险。

Description

一种流水线式全流程自动化测试方法
技术领域
本发明涉及软件测试技术领域,尤其涉及一种测试流程管理和测试执行方法。
背景技术
在软件的测试活动不仅仅包含对发布软件执行测试,还包括测试任务的发起、被测对象的获取、核对被测对象、测试环境搭建、被测软件部署、收集测试结果、测试环境恢复、测试结果通知等环节。但是,目前很多测试自动化相关论文、文章和思路,关注点都还只停留在测试执行如何自动化上,如性能测试自动化,依靠工具实现功能测试、白盒测试等(彭迪.软件测试自动化方法研究.电子质量,2018(11):45-46.),对如何对测试活动的其他环节实现自动化以提升效率的关注度不足。
然而,在整体测试活动中,并不只有测试执行这一环节消耗时间,测试环境的搭建和被测软件的部署同样会占用测试人员宝贵时间。并且,由于传统测试流程中被测对象的获取和核对都由测试人员手工进行,如果人工操作出现失误或疏漏(如在操作ClearCase配置库获取被测对象时,忘记刷新资源),后期的错误排查和返工也会消耗测试人员大量的时间和精力。
现有技术中公开了一种软件测试***及方法(申请号为201410757945.8),所述***包括一台或多台阵列服务器,用于存储对应于不同测试环境的虚拟镜像文件,所述测试环境包括操作***及对应的应用程序;一台或多台测试服务器;中心服务器,用于接收并存储待测试软件及待测试的测试环境信息,并根据所述测试环境信息将存储于阵列服务器中的对应的虚拟镜像文件加载并运行于一台或多台测试服务器中;通讯模块,用于随虚拟镜像文件加载并运行于对应的测试服务器中,与中心服务器通讯,从中心服务器下载待测试软件,并在测试服务器中运行该待测试软件。该发明在整个测试过程中无需测试人员持续参与,免除了部分人工操作,同时测试机与测试环境无需一一对应,实现比较灵活。但是仍然需要人员值守,并进行关键的人工操作。也就是仍然会存在现有测试自动化关注点大多在测试执行,测试活动其余阶段基本人工执行,自动化程度较低,导致时间消耗大、测试效率低的现象。
发明内容
针对上述技术中存在的不足之处,本发明提供一种流水线式全流程自动化测试方法,自动化覆盖至测试活动的各个阶段,实现全流程自动衔接、无人值守,提升了测试效率,节约了执行时间,同时避免了人为误操作带来的测试风险。
为实现上述目的,本发明是这样实现的:
一种流水线式全流程自动化测试方法,其特征在于包括以下步骤:
步骤一:获取待测对象,并对待测对象进行哈希值校验;
步骤二:对待测对象的测试环境进行部署;
步骤三:利用测试工具对待测对象进行测试,并得到测试结果;
步骤四:对测试环境进行清理,恢复至对待测对象的测试环境进行部署前的状态,并检测是否还有新的测试任务,若有新的测试任务,则跳转步骤一,若无新的测试任务,结束测试流程。
进一步的,步骤一具体包括:
步骤100:测试人员在任务流程发布平台输入测试任务发布单号,单号被传入Jenkins持续集成平台;
步骤101,测试任务发布单号进入***后任务流程发布平台获取发布单据 XML格式信息;
步骤102,对XML格式的发布单据进行数据解析,从中提取出本次发布的待测对象版本信息;其中,待测对象版本信息包括软件名称、类型、本次发布版本、配置库内标签、特征码、所需运行环境等。
步骤103,在解析出待测对象的相关信息后,Jenkins调用clearcase或git 配置库工具,连接配置库,下载对应的待测对象;
步骤104,在待测对象获取完毕后,哈希值计算工具被调用以计算获取到的待测对象的特征值;
步骤105,程序将计算的待测对象特征值与发布单对应的发布单中记载的待测对象特征值相比对,如果对比结果不一致,则程序跳转步骤106;如果对比结果一致,程序认为待测对象获取成功,进入步骤107;
步骤106,Jenkins认为文件入库错误或获取过程中网络发生错误,报错退出,结束整个测试流程;
步骤107,Jenkins认为待测对象获取成功,在实验室环境上启动环境准备模块,结束实验室环境工控机上运行的不必要的程序,为待测对象的部署和测试腾出硬件资源。本发明通过程序自动调用文件哈希值计算工具,计算下载的待测数据和软件与测试任务发布单中提取到的特征码做比对,代替人工判断文件是否正确获取。
进一步的,步骤二具体包括:
步骤108,在环境准备模块运行完成后,自动部署工具启动,在准备完毕的实验室环境上部署待测对象的软件和数据。
进一步的,步骤三具体包括:
步骤109,在部署完成后,Jenkins启动自动测试工具;其中,自动测试工具包括但不限于Eggplant、Selenium等软件。
步骤110,Jenkins控制自动测试工具执行预先编写的测试用例,对待测对象进行测试;
步骤111,Jenkins监测测试过程,判断测试用例是否执行完毕;若测试用例尚未全部执行,则跳转步骤110;若测试用例已全部执行,则跳转步骤四。
进一步的,步骤四具体包括:
步骤112,测试已执行完毕,环境清理工具启动,关闭已测试完成的软件,退出自动测试工具,结束周边环境运行;
步骤113,任务管理平台检测***中是否存在下一测试任务,如果存在,则跳转到步骤一;如果所有测试任务都已完成,任务管理平台中已不存在下一测试任务,跳转步骤114;
步骤114,所有测试任务都已完成,程序结束本次流程,等候新的测试命令下达。
在本发明中,通过监控自动测试环节,判断自动测试是否执行完毕,并在测试执行完毕后,根据实际情况需要,调用邮箱接口将测试报告发送至测试人员核验。通过调用环境清理模块,将部署并已测试完毕的待测对象清楚并恢复测试环境至初始状态,为下一流水线流程做准备。
在具体应用场景下,此实施例可以增加其他选项,如增加人工确认测试任务是否要开始、是否仅部署不测试、部署完成后是否调用邮件接口对相关人员进行通知等选项,以增强此方法的易用性和兼容性。
本申请的优势在于,本发明展示的流水线式的测试活动全流程自动化方法,可以实现测试全流程自动化,各个环节自动衔接,整个测试活动无需人员参与。本发明通过对以往需要手工进行的测试环节实现自动化,并通过流水线作业将各个自动化环节串联起来,实现了测试活动整体自动化,极大的提升了测试活动自动化覆盖率,提升了测试效率和执行速度,有效避免了人工误操作带来的测试风险。
附图说明
图1为本发明的架构组成、模块调用关系和阶段划分框图。
图2为本发明实施示例的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1-2。
一种流水线式全流程自动化测试方法,其特征在于包括以下步骤:
步骤一:获取待测对象,并对待测对象进行哈希值校验;
步骤二:对待测对象的测试环境进行部署;
步骤三:利用测试工具对待测对象进行测试,并得到测试结果;
步骤四:对测试环境进行清理,恢复至对待测对象的测试环境进行部署前的状态,并检测是否还有新的测试任务,若有新的测试任务,则跳转步骤一,若无新的测试任务,结束测试流程。
在本实施例中,步骤一具体包括:
步骤100:测试人员在任务流程发布平台输入测试任务发布单号,单号被传入Jenkins持续集成平台;
步骤101,测试任务发布单号进入***后任务流程发布平台获取发布单据 XML格式信息;
步骤102,对XML格式的发布单据进行数据解析,从中提取出本次发布的待测对象版本信息;其中,待测对象版本信息包括软件名称、类型、本次发布版本、配置库内标签、特征码、所需运行环境等。
步骤103,在解析出待测对象的相关信息后,Jenkins调用clearcase或git 配置库工具,连接配置库,下载对应的待测对象;
步骤104,在待测对象获取完毕后,哈希值计算工具被调用以计算获取到的待测对象的特征值;
步骤105,程序将计算的待测对象特征值与发布单对应的发布单中记载的待测对象特征值相比对,如果对比结果不一致,则程序跳转步骤106;如果对比结果一致,程序认为待测对象获取成功,进入步骤107;
步骤106,Jenkins认为文件入库错误或获取过程中网络发生错误,报错退出,结束整个测试流程;
步骤107,Jenkins认为待测对象获取成功,在实验室环境上启动环境准备模块,结束实验室环境工控机上运行的不必要的程序,为待测对象的部署和测试腾出硬件资源。本发明通过程序自动调用文件哈希值计算工具,计算下载的待测数据和软件与测试任务发布单中提取到的特征码做比对,代替人工判断文件是否正确获取。
在本实施例中,步骤二具体包括:
步骤108,在环境准备模块运行完成后,自动部署工具启动,在准备完毕的实验室环境上部署待测对象的软件和数据。
在本实施例中,步骤三具体包括:
步骤109,在部署完成后,Jenkins启动自动测试工具;其中,自动测试工具包括但不限于Eggplant、Selenium等软件。
步骤110,Jenkins控制自动测试工具执行预先编写的测试用例,对待测对象进行测试;
步骤111,Jenkins监测测试过程,判断测试用例是否执行完毕;若测试用例尚未全部执行,则跳转步骤110;若测试用例已全部执行,则跳转步骤四。
在本实施例中,步骤四具体包括:
步骤112,测试已执行完毕,环境清理工具启动,关闭已测试完成的软件,退出自动测试工具,结束周边环境运行;
步骤113,任务管理平台检测***中是否存在下一测试任务,如果存在,则跳转到步骤一;如果所有测试任务都已完成,任务管理平台中已不存在下一测试任务,跳转步骤114;
步骤114,所有测试任务都已完成,程序结束本次流程,等候新的测试命令下达。
本申请的优势在于,本发明展示的流水线式的测试活动全流程自动化方法,可以实现测试全流程自动化,各个环节自动衔接,整个测试活动无需人员参与。本发明通过对以往需要手工进行的测试环节实现自动化,并通过流水线作业将各个自动化环节串联起来,实现了测试活动整体自动化,极大的提升了测试活动自动化覆盖率,提升了测试效率和执行速度,有效避免了人工误操作带来的测试风险。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (5)

1.一种流水线式全流程自动化测试方法,其特征在于包括以下步骤:
步骤一:获取待测对象,并对待测对象进行哈希值校验;
步骤二:对待测对象的测试环境进行部署;
步骤三:利用测试工具对待测对象进行测试,并得到测试结果;
步骤四:对测试环境进行清理,恢复至对待测对象的测试环境进行部署前的状态,并检测是否还有新的测试任务,若有新的测试任务,则跳转步骤一,若无新的测试任务,结束测试流程。
2.如权利要求1所述的流水线式全流程自动化测试方法,步骤一具体包括:
步骤100:测试人员在任务流程发布平台输入测试任务发布单号,单号被传入Jenkins持续集成平台;
步骤101,测试任务发布单号进入***后任务流程发布平台获取发布单据XML格式信息;
步骤102,对XML格式的发布单据进行数据解析,从中提取出本次发布的待测对象版本信息;
步骤103,在解析出待测对象的相关信息后,Jenkins调用clearcase或git配置库工具,连接配置库,下载对应的待测对象;
步骤104,在待测对象获取完毕后,哈希值计算工具被调用以计算获取到的待测对象的特征值;
步骤105,程序将计算的待测对象特征值与发布单对应的发布单中记载的待测对象特征值相比对,如果对比结果不一致,则程序跳转步骤106;如果对比结果一致,程序认为待测对象获取成功,进入步骤107;
步骤106,Jenkins认为文件入库错误或获取过程中网络发生错误,报错退出,结束整个测试流程;
步骤107,Jenkins认为待测对象获取成功,在实验室环境上启动环境准备模块,结束实验室环境工控机上运行的不必要的程序,为待测对象的部署和测试腾出硬件资源。
3.如权利要求1所述的流水线式全流程自动化测试方法,步骤二具体包括:
步骤108,在环境准备模块运行完成后,自动部署工具启动,在准备完毕的实验室环境上部署待测对象的软件和数据。
4.如权利要求1所述的流水线式全流程自动化测试方法,步骤三具体包括:
步骤109,在部署完成后,Jenkins启动自动测试工具;
步骤110,Jenkins控制自动测试工具执行预先编写的测试用例,对待测对象进行测试;
步骤111,Jenkins监测测试过程,判断测试用例是否执行完毕;若测试用例尚未全部执行,则跳转步骤110;若测试用例已全部执行,则跳转步骤四。
5.如权利要求1所述的流水线式全流程自动化测试方法,步骤四具体包括:
步骤112,测试已执行完毕,环境清理工具启动,关闭已测试完成的软件,退出自动测试工具,结束周边环境运行;
步骤113,任务管理平台检测***中是否存在下一测试任务,如果存在,则跳转到步骤一;如果所有测试任务都已完成,任务管理平台中已不存在下一测试任务,跳转步骤114;
步骤114,所有测试任务都已完成,程序结束本次流程,等候新的测试命令下达。
CN201911097063.2A 2019-11-11 2019-11-11 一种流水线式全流程自动化测试方法 Pending CN110825645A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911097063.2A CN110825645A (zh) 2019-11-11 2019-11-11 一种流水线式全流程自动化测试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911097063.2A CN110825645A (zh) 2019-11-11 2019-11-11 一种流水线式全流程自动化测试方法

Publications (1)

Publication Number Publication Date
CN110825645A true CN110825645A (zh) 2020-02-21

Family

ID=69554026

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911097063.2A Pending CN110825645A (zh) 2019-11-11 2019-11-11 一种流水线式全流程自动化测试方法

Country Status (1)

Country Link
CN (1) CN110825645A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111797018A (zh) * 2020-07-01 2020-10-20 卡斯柯信号(北京)有限公司 一种stp测试环境部署方法及装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030182652A1 (en) * 2001-12-21 2003-09-25 Custodio Gabriel T. Software building and deployment system and method
CN102420714A (zh) * 2011-08-29 2012-04-18 展讯通信(上海)有限公司 测试管理方法、测试管理***总控制中心及测试管理***
CN104360952A (zh) * 2012-03-02 2015-02-18 北京奇虎科技有限公司 一种软件测试***及方法
CN105446878A (zh) * 2015-11-09 2016-03-30 上海爱数信息技术股份有限公司 一种持续的程序自动化测试方法
CN106547688A (zh) * 2016-10-19 2017-03-29 厦门市美亚柏科信息股份有限公司 基于Windows的产品自动化测试方法及其***
CN108334437A (zh) * 2018-03-02 2018-07-27 江苏电力信息技术有限公司 一种基于持续集成及自动化测试的软件持续交付验收方法
CN108874650A (zh) * 2017-05-09 2018-11-23 上海秦苍信息科技有限公司 一种持续集成自动化测试方法
CN109634855A (zh) * 2018-12-04 2019-04-16 郑州云海信息技术有限公司 一种基于云计算的自动化测试环境智能匹配方法
CN110096425A (zh) * 2018-12-10 2019-08-06 厦门市美亚柏科信息股份有限公司 一种基于qt开发模式的自动化测试方法、装置及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030182652A1 (en) * 2001-12-21 2003-09-25 Custodio Gabriel T. Software building and deployment system and method
CN102420714A (zh) * 2011-08-29 2012-04-18 展讯通信(上海)有限公司 测试管理方法、测试管理***总控制中心及测试管理***
CN104360952A (zh) * 2012-03-02 2015-02-18 北京奇虎科技有限公司 一种软件测试***及方法
CN105446878A (zh) * 2015-11-09 2016-03-30 上海爱数信息技术股份有限公司 一种持续的程序自动化测试方法
CN106547688A (zh) * 2016-10-19 2017-03-29 厦门市美亚柏科信息股份有限公司 基于Windows的产品自动化测试方法及其***
CN108874650A (zh) * 2017-05-09 2018-11-23 上海秦苍信息科技有限公司 一种持续集成自动化测试方法
CN108334437A (zh) * 2018-03-02 2018-07-27 江苏电力信息技术有限公司 一种基于持续集成及自动化测试的软件持续交付验收方法
CN109634855A (zh) * 2018-12-04 2019-04-16 郑州云海信息技术有限公司 一种基于云计算的自动化测试环境智能匹配方法
CN110096425A (zh) * 2018-12-10 2019-08-06 厦门市美亚柏科信息股份有限公司 一种基于qt开发模式的自动化测试方法、装置及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111797018A (zh) * 2020-07-01 2020-10-20 卡斯柯信号(北京)有限公司 一种stp测试环境部署方法及装置

Similar Documents

Publication Publication Date Title
CN107302476B (zh) 一种测试异步交互***的自动化测试方法与***
CN110008123B (zh) 一种自动部署测试软件的方法以及相应的装置
CN108255717B (zh) 接口自动化测试优化方法、***、电子设备和存储介质
EP1179776A1 (en) Test automation framework
CN112765028A (zh) 基于群控机制的Android应用程序测试方法及***
CN110990289B (zh) 一种自动提交bug的方法、装置、电子设备及存储介质
CN110825645A (zh) 一种流水线式全流程自动化测试方法
CN111193638A (zh) 一种基于Linux平台的网卡自动化测试方法及装置
CN110198222B (zh) 一种配电自动化终端即插即用测试方法及测试主站
CN116431522A (zh) 一种低代码对象存储网关自动化测试方法及***
CN110795341A (zh) 一种服务器的自动测试方法、***及装置
JP2007140954A (ja) オペレータ擬似システムおよびオペレータ擬似方法
CN115576816A (zh) 基于Linux操作***的安卓应用功能自动化测试方法及装置
CN115269443A (zh) 软件缺陷自动定位测试方法及***
CN111581081B (zh) 一种自动化测试***及方法
CN112596750A (zh) 应用测试方法、装置、电子设备及计算机可读存储介质
CN110838951A (zh) 网络设备的测试方法及***
CN110765011B (zh) 一种配置库内测试运维数据自动获取和校验装置及方法
CN117492869B (zh) 一种可视化自动部署服务***和方法
CN114253867B (zh) 基于神经网络模型的自动化测试方法、装置及***
CN114610329B (zh) 固态硬盘部署方法、装置、可读存储介质及电子设备
CN112579455B (zh) 一种接口自动化测试方法、装置、电子设备及存储介质
CN114064508B (zh) 基于群控技术的移动终端软件测试方法及***
CN116303067B (zh) 一种基于云测试平台的测试方法、装置、设备以及介质
CN100518100C (zh) 对通讯***的抗压能力进行自动测试的装置及方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200221

WD01 Invention patent application deemed withdrawn after publication