CN107943689A - 基于参数化测试脚本的自动化测试方法及测试系统 - Google Patents

基于参数化测试脚本的自动化测试方法及测试系统 Download PDF

Info

Publication number
CN107943689A
CN107943689A CN201711134668.5A CN201711134668A CN107943689A CN 107943689 A CN107943689 A CN 107943689A CN 201711134668 A CN201711134668 A CN 201711134668A CN 107943689 A CN107943689 A CN 107943689A
Authority
CN
China
Prior art keywords
test
script
instruction
testing
parameter
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.)
Granted
Application number
CN201711134668.5A
Other languages
English (en)
Other versions
CN107943689B (zh
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.)
Beijing Institute of Satellite Information Engineering
Original Assignee
Beijing Institute of Satellite Information Engineering
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 Beijing Institute of Satellite Information Engineering filed Critical Beijing Institute of Satellite Information Engineering
Priority to CN201711134668.5A priority Critical patent/CN107943689B/zh
Publication of CN107943689A publication Critical patent/CN107943689A/zh
Application granted granted Critical
Publication of CN107943689B publication Critical patent/CN107943689B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/3684Test management for test design, e.g. generating new test cases
    • 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

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)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于参数化测试脚本的自动化测试方法及其测试系统,其测试脚本与测试参数值的独立性,相同测试脚本搭配不同测试参数文件可以覆盖多个测试,修改测试参数实例即可实现测试脚本的扩展;测试脚本的共享性,测试脚本可以嵌套其他测试脚本,测试脚本的结构化特性,具备循环、判断等操作,增强了脚本的逻辑性的同时减少了脚本的冗余,增加了脚本的可读性,指令库的持续发展特性,健壮自动测试脚本的同时,也为使用者简化了编辑测试脚本的步骤,提高了自动测试脚本的灵活性、可读性、逻辑性和可扩展性。

Description

基于参数化测试脚本的自动化测试方法及测试系统
技术领域
本发明涉及脚本自动测试领域,尤其涉及一种基于参数化测试脚本的自动化测试方法及测试系统。
背景技术
在无线通信领域的自动化测试中,经常使用“复制执行”的方式进行自动测试,操作员根据测试方法一步一步操作仪器设备,并记录操作顺序,然后软件人员根据操作顺序将仪器设备指令依次编进自动测试软件中形成测试用例。这类自动测试的缺点是硬编码、灵活性差、测试用例的任何修改均需要软件人员参与,随着仪器设备升级功能更新,测试项目增多,这类自动测试的缺点越来越明显。
在自动测试脚本的研究方面,目前检索到比较少,已有的自动测试脚本是线性自动测试脚本,与“复制执行”方式自动测试类似,这种自动测试脚本设计是将所有的仪器设备指令提前映射成脚本命令,由使用者根据测试步骤逐条将命令编辑成脚本,这种自动测试脚本的编辑重复性工作多,并且通用性差。
发明内容
本发明所要解决的技术问题是针对背景技术的不足提供一种基于参数化测试脚本的自动化测试方法及测试系统,其使用参数化的测试脚本,提高了自动测试脚本的灵活性、可读性、逻辑性和可扩展性。
本发明为解决上述技术问题采用以下技术方案
一种基于参数化测试脚本的自动化测试方法,包含脚本编辑和流程执行:
其中,所述脚本编辑包含如下步骤:
步骤1,根据测试需求设计测试流程;
步骤2,根据步骤1设计的测试流程,分析测试步骤;
步骤3,将复用性高的测试步骤编辑成脚本指令,并存储进指令库;
步骤4,根据步骤2分析的测试步骤,从指令库中调用脚本指令,编辑测试流程脚本,生成测试流程脚本文件,并存储进脚本库;
步骤5,根据步骤2分析的测试步骤,编辑测试参数表,并存储进参数库中;
步骤6,根据步骤5编辑的测试参数表,将测试参数表中的参数项赋具体值,生成参数实例文件,同时将生成的参数实例文件存储进参数实例库中,完成脚本编辑;
所述流程执行包含如下步骤:
步骤a,测试控制单元根据测试需求,从脚本库中找出测试流程脚本文件,从参数实例库中找出参数实例文件;
步骤b,参数解析单元从参数库中找出匹配的测试参数表,根据测试参数表将参数实例文件分解成参数项实例;
步骤c,指令反演单元将测试流程脚本文件分解成测试脚本语句序列,根据指令库将测试脚本语句序列反演成指令源码,并依次将指令源码发送至指令执行单元;
步骤d,指令执行单元接收步骤c中的指令源码,选择需要的参数项实例文件,指令源码与参数实例文件组合形成仪器设备可执行的有效指令;
步骤e,指令执行单元将步骤d中的有效指令发送至仪器设备,进而控制仪器设备完成指定操作。
作为本发明的基于参数化测试脚本的自动化测试方法的进一步优选方案,在步骤4中,测试指令由单指令、逻辑指令以及脚本指令组成。
一种基于参数化测试脚本的自动化测试系统,包含测试脚本编辑装置和流程执行装置,其中,脚本编辑装置,用于编辑测试流程脚本、测试参数表以及编辑测试参数实例文件;流程执行装置,用于对参数实例文件和测试流程脚本文件进行解析、反演得到仪器设备可执行的有效指令,并发送给仪器设备控制测试流程的执行。
作为本发明的基于参数化测试脚本的自动化测试系统的进一步优选方案,所述流程执行装置包含测试控制单元、指令反演单元、参数解析单元和指令执行单元,其中,测试控制单元,用于根据测试需求,选择匹配的测试流程脚本文件和参数实例文件;指令反演单元,用于将测试脚本语句序列反演成指令源码;参数解析单元,用于将参数实例文件解析成参数项;指令执行单元,用于将指令源码和参数实例文件组合成有效指令,并将有效指令发送至测试仪器设备。
本发明采用以上技术方案与现有技术相比,具有以下技术效果:
1、相比现有测试参数硬编码的自动测试脚本,本发明设计的自动测试脚本是参数化的,脚本与参数值是独立分离的,修改参数文件即可实现对测试脚本的扩展,具有较强的灵活性和可扩展性;
2、本发明设计的自动测试脚本是共享的,测试脚本命名的开放性,测试脚本可以嵌套测试脚本,减少了测试脚本编辑的重复性工作,提高了脚本的可读性;
3、相比现有线性自动测试脚本,本发明设计的测试脚本是结构化的,具备循环、判断的逻辑结构,降低了脚本的冗余度,提高了脚本的逻辑性;
4、本发明的脚本指令库是可持续发展的,测试脚本存储进指令库供后续脚本调用。
附图说明
图1是自动测试系统图;
图2是线性自动测试脚本编辑与参数化自动测试脚本编辑比较图;
图3是线性自动测试流程执行与参数化自动测试流程执行比较图。
具体实施方式
下面结合附图对本发明的技术方案做进一步的详细说明:
线性自动测试脚本也不能适应仪器设备升级改造、测量方式和测试项目实时更新、用户系统多变的需要。因此,设计一种参数化自动测试脚本设计方法,测试脚本与测试参数值的独立性,相同测试脚本搭配不同测试参数文件可以覆盖多个测试,修改测试参数值库即可实现测试脚本的扩展;测试脚本的共享性,测试脚本可以嵌套其他测试脚本,测试脚本的结构化特性,具备循环、判断等操作,增强了脚本的逻辑性的同时减少了脚本的冗余,增加了脚本的可读性,指令库的持续发展特性,健壮自动测试脚本的同时也为使用者提供了便利。
实施例一:
一种基于参数化测试脚本的脚本编辑方法,包含脚本编辑和流程执行两部分。其中,如图2所示,所述脚本编辑包含如下步骤:步骤1,根据测试需求设计测试流程;步骤2,根据步骤1设计的测试流程,分析测试步骤;步骤3,将复用性高的测试步骤编辑成脚本指令,并存储进指令库;步骤4,根据步骤2分析的测试步骤,从指令库中调用脚本指令,编辑测试流程脚本,生成测试流程脚本文件,并存储进脚本库;步骤5,根据步骤2分析的测试步骤,编辑测试参数表,并存储进参数库中;步骤6,根据步骤5编辑的测试参数表,将测试参数表中的参数项赋具体值,生成参数实例文件,同时将生成的参数实例文件存储进参数实例库中,完成脚本编辑。
作为本发明的基于参数化测试脚本的自动化测试方法的进一步优选方案,在步骤4中,测试指令由单指令、逻辑指令以及脚本指令组成。
实施例二:
如图3所示,一种基于参数化测试脚本的流程执行方法具体包含如下步骤:步骤a,测试控制单元根据测试需求,从脚本库中找出测试流程脚本文件,从参数实例库中找出参数实例文件;步骤b,参数解析单元从参数库中找出匹配的测试参数表,根据测试参数表将参数实例文件分解成参数项实例;步骤c,指令反演单元将测试流程脚本文件分解成测试脚本语句序列,根据指令库将测试脚本语句序列反演成指令源码,并依次将指令源码发送至指令执行单元;步骤d,指令执行单元接收步骤c中的指令源码,选择需要的参数项实例文件,指令源码与参数实例文件组合形成仪器设备可执行的有效指令;步骤e,指令执行单元将步骤d中的有效指令发送至仪器设备,进而控制仪器设备完成指定操作。
实施例三:
如图3所示,一种基于参数化测试脚本的自动化测试系统,包含测试脚本编辑装置和流程执行装置。其中,脚本编辑装置,用于编辑测试流程脚本、测试参数表以及编辑测试参数实例文件;流程执行装置,用于对参数实例文件和测试流程脚本文件进行解析、反演得到仪器设备可执行的有效指令,并发送给仪器设备控制测试流程的执行。
作为本发明的基于参数化测试脚本的自动化测试系统的进一步优选方案,所述流程执行装置包含测试控制单元、指令反演单元、参数解析单元和指令执行单元;其中,测试控制单元,用于根据测试需求,选择匹配的测试流程脚本文件和参数实例文件;指令反演单元,用于将测试脚本语句序列反演成指令源码;参数解析单元,用于将参数实例文件解析成参数项;指令执行单元,用于将指令源码和参数实例文件组合成有效指令,并将有效指令发送至测试仪器设备。
应了解,参数化自动测试脚本设计方法具有以下几种特性:1、测试脚本的参数化特性;2、测试脚本的共享特性;3、测试脚本的结构化特性;4、指令库的持续发展特性。
该方法设计的自动测试脚本具有较好的灵活性、可读性、逻辑性和可扩展性。
测试用例对应的测试脚本与测试参数是分离的,测试用例由测试脚本和测试参数两部分组成,测试脚本仅包含测试参数名,不包含测试参数值,测试参数值独立存储在数据库或文件中,测试用例执行时,测试脚本根据测试参数名到数据库或文件中查找相应的测试参数值执行测试,同一个测试脚本匹配不同的测试参数文件对应不同的测试用例,增加了脚本编辑的灵活性和可扩展性。
测试脚本是共享的,脚本命名的开放性,测试脚本可以作为指令嵌入测试脚本,常用的测试操作可以编制为标准测试指令并规范命令,供其他脚本调用,降低了脚本编辑的工作量,增加了脚本的可读性。
测试脚本是结构化设计,脚本中使用结构控制可以实现循环、判断等操作,减少了脚本的冗余,增加了脚本的逻辑性。
指令库的可持续发展特性,常用操作可以编辑成脚本指令,存入指令库,逐步对指令库进行扩充,健壮了指令库的同时降低了脚本编辑的工作量,增加了脚本的可扩展性。

Claims (4)

1.一种基于参数化测试脚本的自动化测试方法,其特征在于:包含脚本编辑和流程执行:
其中,所述脚本编辑包含如下步骤:
步骤1,根据测试需求设计测试流程;
步骤2,根据步骤1设计的测试流程,分析测试步骤;
步骤3,将复用性高的测试步骤编辑成脚本指令,并存储进指令库;
步骤4,根据步骤2分析的测试步骤,从指令库中调用脚本指令,编辑测试流程脚本,生成测试流程脚本文件,并存储进脚本库;
步骤5,根据步骤2分析的测试步骤,编辑测试参数表,并存储进参数库中;
步骤6,根据步骤5编辑的测试参数表,将测试参数表中的参数项赋具体值,生成参数实例文件,同时将生成的参数实例文件存储进参数实例库中,完成脚本编辑;
所述流程执行包含如下步骤:
步骤a,测试控制单元根据测试需求,从脚本库中找出测试流程脚本文件,从参数实例库中找出参数实例文件;
步骤b,参数解析单元从参数库中找出匹配的测试参数表,根据测试参数表将参数实例文件分解成参数项实例;
步骤c,指令反演单元将测试流程脚本文件分解成测试脚本语句序列,根据指令库将测试脚本语句序列反演成指令源码,并依次将指令源码发送至指令执行单元;
步骤d,指令执行单元接收步骤c中的指令源码,选择需要的参数项实例文件,指令源码与参数实例文件组合形成仪器设备可执行的有效指令;
步骤e,指令执行单元将步骤d中的有效指令发送至仪器设备,进而控制仪器设备完成指定操作。
2.根据权利要求1所述的基于参数化测试脚本的自动化测试方法,其特征在于:在步骤4中,测试指令由单指令、逻辑指令以及脚本指令组成。
3.一种基于参数化测试脚本的自动化测试系统,其特征在于,包含测试脚本编辑装置和流程执行装置;
其中,脚本编辑装置,用于编辑测试流程脚本、测试参数表以及编辑测试参数实例文件;
流程执行装置,用于对参数实例文件和测试流程脚本文件进行解析、反演得到仪器设备可执行的有效指令,并发送给仪器设备控制测试流程的执行。
4.根据权利要求3所述的基于参数化测试脚本的自动化测试系统,其特征在于,
所述流程执行装置包含测试控制单元、指令反演单元、参数解析单元和指令执行单元;
其中,测试控制单元,用于根据测试需求,选择匹配的测试流程脚本文件和参数实例文件;
指令反演单元,用于将测试脚本语句序列反演成指令源码;
参数解析单元,用于将参数实例文件解析成参数项;
指令执行单元,用于将指令源码和参数实例文件组合成有效指令,并将有效指令发送至测试仪器设备。
CN201711134668.5A 2017-11-16 2017-11-16 基于参数化测试脚本的自动化测试方法及测试系统 Active CN107943689B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711134668.5A CN107943689B (zh) 2017-11-16 2017-11-16 基于参数化测试脚本的自动化测试方法及测试系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711134668.5A CN107943689B (zh) 2017-11-16 2017-11-16 基于参数化测试脚本的自动化测试方法及测试系统

Publications (2)

Publication Number Publication Date
CN107943689A true CN107943689A (zh) 2018-04-20
CN107943689B CN107943689B (zh) 2021-04-23

Family

ID=61931327

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711134668.5A Active CN107943689B (zh) 2017-11-16 2017-11-16 基于参数化测试脚本的自动化测试方法及测试系统

Country Status (1)

Country Link
CN (1) CN107943689B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109446059A (zh) * 2018-09-12 2019-03-08 北京邮电大学 测试模板脚本的生成方法及装置
JP2020087079A (ja) * 2018-11-28 2020-06-04 株式会社日立製作所 システム開発支援装置およびシステム開発支援方法
CN111651351A (zh) * 2020-05-29 2020-09-11 成都新潮传媒集团有限公司 一种基于Jenkins的软件性能测试方法及装置
CN112416691A (zh) * 2020-12-09 2021-02-26 海光信息技术股份有限公司 基于基准测试工具的性能测试方法及系统
CN112783794A (zh) * 2021-02-10 2021-05-11 西南电子技术研究所(中国电子科技集团公司第十研究所) 航空通信电台软件测试系统
CN113656322A (zh) * 2021-08-26 2021-11-16 阿里巴巴(中国)有限公司 数据处理方法、装置、电子设备及计算机存储介质
CN114691530A (zh) * 2022-06-01 2022-07-01 广州世炬网络科技有限公司 一种通信端到端自动测试方法及平台

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102169183A (zh) * 2010-12-10 2011-08-31 北京空间飞行器总体设计部 一种基于测试原子的卫星自动化测试方法
CN102622234A (zh) * 2012-03-07 2012-08-01 迈普通信技术股份有限公司 一种自动化测试用例的开发系统及开发方法
CN102722437A (zh) * 2012-05-29 2012-10-10 北京空间飞行器总体设计部 一种基于组件与脚本的航天器测试系统及测试方法
US20140282407A1 (en) * 2013-03-14 2014-09-18 Accenture Global Services Limited Test script generation system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102169183A (zh) * 2010-12-10 2011-08-31 北京空间飞行器总体设计部 一种基于测试原子的卫星自动化测试方法
CN102622234A (zh) * 2012-03-07 2012-08-01 迈普通信技术股份有限公司 一种自动化测试用例的开发系统及开发方法
CN102722437A (zh) * 2012-05-29 2012-10-10 北京空间飞行器总体设计部 一种基于组件与脚本的航天器测试系统及测试方法
US20140282407A1 (en) * 2013-03-14 2014-09-18 Accenture Global Services Limited Test script generation system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
邓璐娟: "自动化测试框架技术及应用", 《计算机测量与控制》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109446059A (zh) * 2018-09-12 2019-03-08 北京邮电大学 测试模板脚本的生成方法及装置
JP2020087079A (ja) * 2018-11-28 2020-06-04 株式会社日立製作所 システム開発支援装置およびシステム開発支援方法
JP7116671B2 (ja) 2018-11-28 2022-08-10 株式会社日立製作所 システム開発支援装置およびシステム開発支援方法
CN111651351A (zh) * 2020-05-29 2020-09-11 成都新潮传媒集团有限公司 一种基于Jenkins的软件性能测试方法及装置
CN112416691A (zh) * 2020-12-09 2021-02-26 海光信息技术股份有限公司 基于基准测试工具的性能测试方法及系统
CN112783794A (zh) * 2021-02-10 2021-05-11 西南电子技术研究所(中国电子科技集团公司第十研究所) 航空通信电台软件测试系统
CN112783794B (zh) * 2021-02-10 2024-03-26 西南电子技术研究所(中国电子科技集团公司第十研究所) 航空通信电台软件测试系统
CN113656322A (zh) * 2021-08-26 2021-11-16 阿里巴巴(中国)有限公司 数据处理方法、装置、电子设备及计算机存储介质
CN113656322B (zh) * 2021-08-26 2023-10-10 阿里巴巴(中国)有限公司 数据处理方法、装置、电子设备及计算机存储介质
CN114691530A (zh) * 2022-06-01 2022-07-01 广州世炬网络科技有限公司 一种通信端到端自动测试方法及平台

Also Published As

Publication number Publication date
CN107943689B (zh) 2021-04-23

Similar Documents

Publication Publication Date Title
CN107943689A (zh) 基于参数化测试脚本的自动化测试方法及测试系统
KR102494819B1 (ko) 제조 편차에 대해 반응하는 생산 계획의 동적 수정
US20050028133A1 (en) System and method for rapid design, prototyping, and implementation of distributed scalable architecture for task control and automation
US9619212B2 (en) Providing code, code generator and software development environment
JP5806061B2 (ja) プログラマブル表示器の支援装置、そのプログラム、操作画面一括変更支援方法
EP1703401A3 (en) Information processing apparatus and control method therefor
US9959868B1 (en) Conversational programming interface
CN106933730A (zh) 基于测试框架系统的测试方法、装置和测试框架系统
KR20080082323A (ko) 컴포넌트 기반의 소프트웨어 개발을 위한 장치 및 방법
CN109117372A (zh) 测试代码生成方法、装置、计算机设备和存储介质
CN106325965A (zh) 操作系统的编译方法和装置
WO2006135607A3 (en) Method and system for rapid deployment and development of application and test software and documentation
CN111026670B (zh) 测试用例的生成方法、测试用例的生成装置及存储介质
JP6370503B1 (ja) プログラム作成装置
Feuerstack et al. Automated usability evaluation during model-based interactive system development
CN103164306B (zh) 一种测试逻辑的生成方法及装置
JP4670719B2 (ja) 数値制御装置およびこの数値制御装置からのデータを用いてシミュレーションを実施するシミュレーション装置
CN105868104B (zh) 一种跨平台的图形用户界面自动测试方法
KR20050087713A (ko) 그래피컬 프로그래밍 장치 및 프로그래머블 표시기
CN108877806B (zh) 测试指令式语音控制系统的测试验证系统
KR20210039714A (ko) 테스트 환경 구축 방법 및 장치
CN110838338A (zh) 生物分析项目的建立系统、方法、存储介质、及电子设备
CN110796265B (zh) 决策树模型的交互式操作方法、装置、终端设备及介质
CN116262347A (zh) 一种基于图形拖拽编程的机器人控制方法及控制系统
CN106020918A (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
GR01 Patent grant
GR01 Patent grant