CN106874209B - 测试脚本的生成方法和装置 - Google Patents
测试脚本的生成方法和装置 Download PDFInfo
- Publication number
- CN106874209B CN106874209B CN201710154209.7A CN201710154209A CN106874209B CN 106874209 B CN106874209 B CN 106874209B CN 201710154209 A CN201710154209 A CN 201710154209A CN 106874209 B CN106874209 B CN 106874209B
- Authority
- CN
- China
- Prior art keywords
- test
- area
- test case
- script
- case
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
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)
- Investigating Strength Of Materials By Application Of Mechanical Stress (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提出一种测试脚本的生成方法和装置,方法包括:加载测试用例和变量库,所述测试用例中包括至少一个测试用例数据,所述变量库中包括至少一个测试用例变量;根据所述测试用例和所述变量库,采用测试脚本生成规则生成测试脚本。本发明能够根据测试用测和变量库自动生成测试脚本,缩短了测试脚本开发周期,使汽车控制器能够快速的被测试,从而能够尽早投入市场;而且使生成的测试脚本的结构和格式统一,增强了测试脚本的可阅读性和复用性。
Description
技术领域
本发明涉及车辆领域,尤其涉及一种测试脚本的生成方法和装置。
背景技术
现有技术中,汽车控制器的应用越来越广泛,汽车控制器的设计也越来越复杂,在市场激烈的竞争下,要求汽车控制器能够被快速开发和测试,以便尽早投入市场,所以目前的汽车控制器的测试一般采用自动化测试。
dSPACE产品是被广泛应用在汽车控制器的硬件在环自动测试系统中的产品之一,它具有精度高、可靠性高和能适用多种复杂工况等特点。Automation Desk是基于dSPACE平台搭建的汽车控制器的硬件在环自动测试系统中的测试脚本开发环境。在该环境下,测试脚本开发人员按照测试人员编写的测试用例开发测试脚本。
由于汽车控制器越来越复杂,其对应的测试用例和测试场景也越来越多,所以自动测试脚本的开发工作量越来越大,导致开发周期变长;并且由于测试脚本开发人员的开发习惯差异,导致测试脚本的差异很大,测试脚本的可阅读性和可复用性较低。因此,有必要改进上述缺陷。
发明内容
基于以上问题,本发明提出一种测试脚本的生成方法和装置,解决了现有技术中需要测试人员参与生成测试脚本的过程,使测试脚本开发周期变长和测试脚本的复用性差的问题,本发明实施例能够根据测试用测和变量库自动生成测试脚本,缩短了测试脚本开发周期,使汽车控制器能够快速的被测试,从而能够尽早投入市场;而且使生成的测试脚本的结构和格式统一,增强了测试脚本的可阅读性和复用性。
一方面,本发明提出一种测试脚本的生成方法,包括:
加载测试用例和变量库,所述测试用例中包括至少一个测试用例数据,所述变量库中包括至少一个测试用例变量;
根据所述测试用例和所述变量库,采用测试脚本生成规则生成测试脚本。
此外,所述测试用例数据至少包括测试用例序号、测试用例标定值、测试用例变量、测试步骤和/或测试预期结果。
此外,所述测试用例变量至少包括系统初始化变量、报文变量和/或子系统变量。
此外,在所述加载测试用例和变量库之前,所述方法还包括:显示测试脚本的生成界面,所述生成界面用于加载所述测试用例和所述变量库。
此外,所述测试脚本生成规则至少包括:测试脚本的工程结构、测试脚本的序列结构和/或测试脚本的测试步骤。
此外,所述测试用例由输入了所述测试用例数据的测试用例模板生成。
另一方面,本发明提出一种测试脚本的生成装置,包括:
加载模块,用于:加载测试用例和变量库,所述测试用例中包括至少一个测试用例数据,所述变量库中包括至少一个测试用例变量;
生成模块,用于:根据所述测试用例和所述变量库,采用测试脚本生成规则生成测试脚本。
此外,所述测试用例数据至少包括测试用例序号、测试用例标定值、测试用例变量、测试步骤和/或测试预期结果。
此外,所述测试用例变量至少包括系统初始化变量、报文变量和/或子系统变量。
此外,在所述加载测试用例和变量库之前,所述装置还包括显示模块,用于:显示测试脚本的生成界面,所述生成界面用于加载所述测试用例和所述变量库。
此外,所述测试脚本生成规则至少包括:测试脚本的工程结构、测试脚本的序列结构和/或测试脚本的测试步骤。
此外,所述测试用例由输入了所述测试用例数据的测试用例模板生成。
通过采用上述技术方案,具有如下有益效果:
本发明解决了现有技术中需要测试人员参与生成测试脚本的过程,使测试脚本开发周期变长和测试脚本的复用性差的问题,本发明实施例能够根据测试用测和变量库自动生成测试脚本,缩短了测试脚本开发周期,使汽车控制器能够快速的被测试,从而能够尽早投入市场;而且使生成的测试脚本的结构和格式统一,增强了测试脚本的可阅读性和复用性。
附图说明
图1是根据本发明一个实施例的测试脚本的生成方法的流程图;
图2是根据本发明另一个实施例的测试脚本的生成方法的流程图;
图3是根据本发明另一个实施例的测试脚本的生成方法中的生成界面的示意图;
图4是根据本发明另一个实施例的测试脚本的生成方法中的测试用例模板的示意图;
图5是根据本发明另一个实施例的测试脚本的生成方法中的变量库的存储结构的示意图;
图6是根据本发明另一个实施例的测试脚本的生成方法中的测试脚本的工程结构的示意图;
图7是根据本发明另一个实施例的测试脚本的生成装置的框图。
具体实施方式
以下结合具体实施方案和附图对本发明进行进一步的详细描述。其只意在详细阐述本发明的具体实施方案,并不对本发明产生任何限制,本发明的保护范围以权利要求书为准。
实施例一
参照图1,本发明实施例提出一种测试脚本的生成方法,包括:
步骤S001,加载测试用例和变量库,测试用例中包括至少一个测试用例数据,变量库中包括至少一个测试用例变量;
步骤S002,根据测试用例和变量库,采用测试脚本生成规则生成测试脚本。
在步骤S001中,先加载测试用例和变量库,测试用例可以是一个文件,通过加载测试用例文件加载测试用例,变量库里面存储了生成测试脚本所需的变量,在生成测试脚本的时候,从变量库中读取需要的不同的变量,变量库可以为一个文件,如扩展名为.lib的文件。
在步骤S002中,当测试用例和变量库已经加载完毕后,执行生成测试脚本的程序,该程序根据测试脚本生成规则编写,执行完毕该程序后,生成测试脚本。
本发明实施例解决了现有技术中需要测试人员参与生成测试脚本的过程,使测试脚本开发周期变长和测试脚本的复用性差的问题,本发明实施例能够根据测试用测和变量库自动生成测试脚本,缩短了测试脚本开发周期,使汽车控制器能够快速的被测试,从而能够尽早投入市场;而且使生成的测试脚本的结构和格式统一,增强了测试脚本的可阅读性和复用性。
实施例二
参照图2,本发明实施例提出一种测试脚本的生成方法,包括:
步骤S201,显示测试脚本的生成界面,生成界面用于加载测试用例和变量库。图3所示为生成界面,在生成界面提供加载测试用例的入口“用例_源文件”,提供加载变量库的入口“库_源文件”,可选地,还可以提供“生成脚本”的按钮或者“测试”按钮。通过提供测试脚本的生成界面,使用户更加方便的加载测试用例和变量库,也更加方便的进行测试脚本的生成。
步骤S202,通过测试脚本的生成界面加载测试用例和变量库,测试用例中包括至少一个测试用例数据,变量库中包括至少一个测试用例变量。
测试用例数据至少包括测试用例序号、测试用例标定值、测试用例变量、测试步骤和/或测试预期结果。
可选地,参照图4,测试用例由输入了测试用例数据的测试用例模板生成。
建立测试用例模板,测试用例模板可包含以下五个区域:
用例序号区:用于填写测试用例序号及测试步骤的序号,序号唯一。
用例标定区:用于填写和测试用例相关的测试用例标定值。
变量区:用于填写测试工程中要用到的测试用例变量,如Python变量。
动作区:用于填写测试步骤中的动作。
预期结果区:用于填写测试步骤中的测试预期结果。
通过分区域输入测试用例数据,使输入时能够更加清晰同时方便检查错误。
在测试用例模板中填写测试用例数据时,需要遵守测试用例模板的规则,如:测试用例序号唯一,两个测试步骤之间插入新步骤时不能影响测试用例序号。如:测试用例标定值中标定名称和软件发布标定名称保持一致,标定值名称和软件发布标定名称的字符之间不能有空格,如Ke_PRZ_Enable=True。变量去中填写的测试用例变量可来源于变量库。通过制定测试模板输入测试用例数据的规范,使测试模板生成测试用例时的一致性增强。
步骤S203,根据测试用例和变量库,采用测试脚本生成规则生成测试脚本。
图5所示为变量库的存储结构。可选地,测试用例变量至少包括系统初始化变量、报文变量和/或子系统变量。
系统初始化变量的命名规则为:以Sys_XXXX形式进行命名。
报文变量的命名规则为:以Rx_CAN_XXXX1_XXXX2形式命名。
子系统变量的命名规则为:Act_XXXX1_XXXX2形式命名。
通过在变量库中设置不同的变量种类,从而使自动加载变量时的正确率提高。
可选地,测试脚本生成规则至少包括:测试脚本的工程结构、测试脚本的序列结构和/或测试脚本的测试步骤。
测试脚本的工程结构可包括:
工程名称区:可以自定义工程名称(一般和测试对象相关)。
测试平台区:填写测试平台名称和测试用例文件的路径。
标定值区:填写发布软件中的标定变量。
结果变量区:填写测试用例中测试预期结果中的变量。
加载程序区:加载测试程序。
测试序列区:填写测试用例序号。
测试脚本的序列结构中主要包括:测试步骤区和打印结果区。
测试脚本的测试步骤主要包括:测试时间区、读取测试结果区和对比实际测试结果与预期测试结果区。
图6所示为测试脚本的工程结构。通过设置测试脚本生成规则使测试用例按照相同的规则生成测试脚本,使测试脚本的一致性增强。
本发明实施例通过测试脚本的生成界面加载测试用例和变量库,使加载过程更加方便;通过测试用例模板生成测试用例,使测试用例的一致性得到保证,从而使生成的测试脚本的可读性和可复用性增强。
实施例三
参照图7,本发明实施例提出一种测试脚本的生成装置,包括:
加载模块701,用于:加载测试用例和变量库,测试用例中包括至少一个测试用例数据,变量库中包括至少一个测试用例变量;
生成模块702,用于:根据测试用例和变量库,采用测试脚本生成规则生成测试脚本。
可选地,测试用例数据至少包括测试用例序号、测试用例标定值、测试用例变量、测试步骤和/或测试预期结果。
可选地,测试用例变量至少包括系统初始化变量、报文变量和/或子系统变量。
可选地,在加载测试用例和变量库之前,装置还包括显示模块,用于:显示测试脚本的生成界面,生成界面用于加载测试用例和变量库。
可选地,测试脚本生成规则至少包括:测试脚本的工程结构、测试脚本的序列结构和/或测试脚本的测试步骤。
可选地,测试用例由输入了测试用例数据的测试用例模板生成。
以上所述的仅是本发明的原理和较佳的实施例。应当指出,对于本领域的普通技术人员来说,在本发明原理的基础上,还可以做出若干其它变型,也应视为本发明的保护范围。
Claims (8)
1.一种测试脚本的生成方法,其特征在于,包括:
加载测试用例和变量库,所述测试用例中包括至少一个测试用例数据,所述变量库中包括至少一个测试用例变量;
根据所述测试用例和所述变量库,采用测试脚本生成规则生成测试脚本;
所述测试脚本生成规则至少包括:测试脚本的工程结构、测试脚本的序列结构和/或测试脚本的测试步骤;
测试脚本的工程结构包括:工程名称区、测试平台区、标定值区、结果变量区、加载程序区和测试序列区;测试脚本的序列结构包括:测试步骤区和打印结果区;测试脚本的测试步骤包括:测试时间区、读取测试结果区和对比实际测试结果与预期测试结果区;
所述测试用例由输入了所述测试用例数据的测试用例模板生成,所述测试用例模板包括用例序号区、用例标定区、变量区、动作区和预期结果区。
2.根据权利要求1所述的测试脚本的生成方法,其特征在于,
所述测试用例数据至少包括测试用例序号、测试用例标定值、测试用例变量、测试步骤和/或测试预期结果。
3.根据权利要求1所述的测试脚本的生成方法,其特征在于,
所述测试用例变量至少包括系统初始化变量、报文变量和/或子系统变量。
4.根据权利要求1所述的测试脚本的生成方法,其特征在于,
在所述加载测试用例和变量库之前,所述方法还包括:显示测试脚本的生成界面,所述生成界面用于加载所述测试用例和所述变量库。
5.一种测试脚本的生成装置,其特征在于,包括:
加载模块,用于:加载测试用例和变量库,所述测试用例中包括至少一个测试用例数据,所述变量库中包括至少一个测试用例变量;
生成模块,用于:根据所述测试用例和所述变量库,采用测试脚本生成规则生成测试脚本;
所述测试脚本生成规则至少包括:测试脚本的工程结构、测试脚本的序列结构和/或测试脚本的测试步骤;
测试脚本的工程结构包括:工程名称区、测试平台区、标定值区、结果变量区、加载程序区和测试序列区;测试脚本的序列结构包括:测试步骤区和打印结果区;测试脚本的测试步骤包括:测试时间区、读取测试结果区和对比实际测试结果与预期测试结果区;
所述测试用例由输入了所述测试用例数据的测试用例模板生成,所述测试用例模板包括用例序号区、用例标定区、变量区、动作区和预期结果区。
6.根据权利要求5所述的测试脚本的生成装置,其特征在于,
所述测试用例数据至少包括测试用例序号、测试用例标定值、测试用例变量、测试步骤和/或测试预期结果。
7.根据权利要求5所述的测试脚本的生成装置,其特征在于,
所述测试用例变量至少包括系统初始化变量、报文变量和/或子系统变量。
8.根据权利要求5所述的测试脚本的生成装置,其特征在于,
在所述加载测试用例和变量库之前,所述装置还包括显示模块,用于:显示测试脚本的生成界面,所述生成界面用于加载所述测试用例和所述变量库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710154209.7A CN106874209B (zh) | 2017-03-15 | 2017-03-15 | 测试脚本的生成方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710154209.7A CN106874209B (zh) | 2017-03-15 | 2017-03-15 | 测试脚本的生成方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106874209A CN106874209A (zh) | 2017-06-20 |
CN106874209B true CN106874209B (zh) | 2021-03-09 |
Family
ID=59171283
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710154209.7A Active CN106874209B (zh) | 2017-03-15 | 2017-03-15 | 测试脚本的生成方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106874209B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111045417B (zh) * | 2019-12-24 | 2023-05-12 | 一汽解放汽车有限公司 | 用于多种新能源车辆的下线检测任务动态调度控制方法 |
CN113077735B (zh) * | 2020-01-06 | 2023-11-17 | 广州汽车集团股份有限公司 | 一种车载显示设备的测试方法、装置及系统 |
CN114003512B (zh) * | 2021-12-30 | 2022-05-13 | 卡斯柯信号(北京)有限公司 | 一种基于列车自动控制集成验证平台脚本生成方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102446090A (zh) * | 2010-10-09 | 2012-05-09 | 金蝶软件(中国)有限公司 | 一种测试脚本的自动生成方法和装置 |
CN103186460A (zh) * | 2011-12-30 | 2013-07-03 | 金蝶软件(中国)有限公司 | 一种生成测试用例脚本的方法、装置及系统 |
CN103365661A (zh) * | 2013-07-11 | 2013-10-23 | 盛科网络(苏州)有限公司 | 自动化测试脚本的开发方法和系统 |
US9047414B1 (en) * | 2011-03-15 | 2015-06-02 | Symantec Corporation | Method and apparatus for generating automated test case scripts from natural language test cases |
-
2017
- 2017-03-15 CN CN201710154209.7A patent/CN106874209B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102446090A (zh) * | 2010-10-09 | 2012-05-09 | 金蝶软件(中国)有限公司 | 一种测试脚本的自动生成方法和装置 |
US9047414B1 (en) * | 2011-03-15 | 2015-06-02 | Symantec Corporation | Method and apparatus for generating automated test case scripts from natural language test cases |
CN103186460A (zh) * | 2011-12-30 | 2013-07-03 | 金蝶软件(中国)有限公司 | 一种生成测试用例脚本的方法、装置及系统 |
CN103365661A (zh) * | 2013-07-11 | 2013-10-23 | 盛科网络(苏州)有限公司 | 自动化测试脚本的开发方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN106874209A (zh) | 2017-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112270149B (zh) | 验证平台自动化集成方法、系统及电子设备和存储介质 | |
CN102667730B (zh) | 设计时调试 | |
CN110046101B (zh) | 页面自动化测试方法、装置及计算机存储介质 | |
US10331824B2 (en) | Dynamically loaded system-level simulation | |
CN106874209B (zh) | 测试脚本的生成方法和装置 | |
CN103180834B (zh) | 自动操作系统测试框架 | |
CN110007921B (zh) | 一种代码发布方法及装置 | |
CN109634648B (zh) | 一种快速切换sdk网络接口环境的方法及装置 | |
US9058427B2 (en) | Iterative generation of symbolic test drivers for object-oriented languages | |
CN104156305A (zh) | 一种应用程序测试方法及装置 | |
CN114117977B (zh) | 一种适用于自动验证处理器系统场景的方法 | |
CN113885935A (zh) | 资源打包方法、装置、电子设备及计算机可读存储介质 | |
CN113703751A (zh) | 工业指标组件的图形化生成方法、装置和电子设备 | |
CN113094252B (zh) | 测试用例生成方法、装置、计算机设备及存储介质 | |
CN113157508A (zh) | 嵌入式系统的测试方法、系统、装置、设备及存储介质 | |
CN117330935A (zh) | 一种集成电路测试方法、装置、介质 | |
CN117270864A (zh) | 代码编译方法、装置、设备及存储介质 | |
CN111240678A (zh) | 弹出窗口的设置方法及装置、电子设备、存储介质 | |
US20130061206A1 (en) | Automatically generating executable code for a test sequence | |
CN115168232A (zh) | 一种基于autosar平台的测试方法、装置、电子设备及存储介质 | |
CN106682249B (zh) | 模型无关的通用发布/订阅接口测试系统及方法 | |
CN111444618B (zh) | 一种基于变量字典的仿真方法及装置 | |
CN112748905B (zh) | 基础库的初始化调用方法、装置、电子设备及存储介质 | |
CN114691496A (zh) | 单元测试方法、装置、计算设备及介质 | |
CN111949296A (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 |