CN112579465B - 一种测试案例执行方法、装置、存储介质和设备 - Google Patents
一种测试案例执行方法、装置、存储介质和设备 Download PDFInfo
- Publication number
- CN112579465B CN112579465B CN202011565225.3A CN202011565225A CN112579465B CN 112579465 B CN112579465 B CN 112579465B CN 202011565225 A CN202011565225 A CN 202011565225A CN 112579465 B CN112579465 B CN 112579465B
- Authority
- CN
- China
- Prior art keywords
- information
- input
- test case
- case
- test
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 213
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000008569 process Effects 0.000 claims abstract description 28
- 230000006870 function Effects 0.000 claims description 26
- 238000010998 test method Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 18
- 238000013461 design Methods 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 2
- 238000003326 Quality management system Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
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
-
- 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/3688—Test 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)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种测试案例执行方法、装置、存储介质和设备,获取用户基于预设案例模板所输入的参数信息,参数信息包括执行测试案例时所需要输入的参数的数值。在获取到用户的第一触发操作的情况下,调用参数,生成测试案例。获取用户基于预设对象模板所输入的对象信息。在获取到用户的第二触发操作的情况下,调用输入要素,生成页面元素定位信息。在获取到用户的第三触发操作的情况下,调用页面元素定位信息,执行测试案例。与现有技术相比,本申请无需进行测试案例的编程,能够降低对测试人员的编程能力要求。此外,在测试需求有变动的情况下,无需测试人员进行二次编程调整测试案例,减少测试案例的调整时间,从而提高测试执行过程的效率。
Description
技术领域
本申请涉及软件研发领域,尤其涉及一种测试案例执行方法、装置、存储介质和设备。
背景技术
软件研发过程一般包括需求分析、系统设计、编码及测试等阶段,测试是软件质量把控的关键环节,开展测试案例自动化执行是提高测试效率的有效途径。
目前,在测试案例的自动化执行过程中,测试案例的生成通常采用自动化测试工具进行录制回放的方式,或采用特定工具自动化测试方式。然而,采用这两种方式要求测试人员需具备较强的编程能力(即需要测试人员编程实现测试案例),人力成本、时间成本消耗较大,使得测试案例的调整时间延长,从而降低测试执行过程的效率。
因此,如何提供一种测试案例执行方法,实现测试案例自动化执行的同时,提高测试执行过程的效率,是本领域亟待解决的技术难题。
发明内容
本申请提供了一种测试案例执行方法、装置、存储介质和设备,目的在于实现测试案例自动化执行的同时,提高测试执行过程的效率。
为了实现上述目的,本申请提供了以下技术方案:
一种测试案例执行方法,包括:
获取用户基于预设案例模板所输入的参数信息;所述参数信息包括执行测试案例时所需要输入的参数的数值;
在获取到所述用户的第一触发操作的情况下,调用所述参数,生成所述测试案例;
获取所述用户基于预设对象模板所输入的对象信息;所述对象信息用于指示执行所述测试案例时所需输入的对象;所述对象包括所述测试案例的输入要素;
在获取到所述用户的第二触发操作的情况下,调用所述输入要素,生成页面元素定位信息;
在获取到所述用户的第三触发操作的情况下,调用所述页面元素定位信息,执行所述测试案例。
可选的,所述获取到所述用户的第一触发操作之前,还包括:
获取所述用户输入的案例格式;
所述调用所述参数,生成所述测试案例,包括:
调用所述参数,生成符合所述案例格式的所述测试案例。
可选的,所述调用所述参数,生成所述测试案例之后,还包括:
将所述测试案例存储至案例表中。
可选的,所述对象信息包括所述对象的对象名、对象类型、框架标签、框架值、标签以及标签值;
所述调用所述输入要素,生成页面元素定位信息,包括:
解析所述输入要素的对象类型,生成对象类型信息,并将所述对象类型信息存储至输入类型字符串中;
解析所述输入要素的框架标签和框架值,生成对象帧信息,并将所述对象帧信息存储至帧信息字符串中;
解析所述输入要素的标签和标签值,生成对象标签信息,并将所述对象标签信息存储至标签信息字符串中;
将所述输入类型字符串、所述帧信息字符串、以及所述标签信息字符串进行组合,生成页面元素定位信息。
可选的,所述调用所述输入要素,生成页面元素定位信息之后,还包括:
将所述页面元素定位信息存储至对象列表中。
可选的,调用所述页面元素定位信息,执行所述测试案例,包括:
对所述页面元素定位信息进行编码,得到编码定位信息,并调用所述编码定位信息,执行所述测试案例。
可选的,所述预设案例模板包括参数项,所述参数项包括被测系统的功能需求、所述测试案例的路径信息、所述测试案例的测试指令、以及所述输入要素的业务规则;
所述参数信息为所述参数项的数值。
一种测试案例执行装置,包括:
参数获取单元,用于获取用户基于预设案例模板所输入的参数信息;所述参数信息包括执行测试案例时所需要输入的参数的数值;
案例生成单元,用于在获取到所述用户的第一触发操作的情况下,调用所述参数,生成所述测试案例;
对象获取单元,用于获取所述用户基于预设对象模板所输入的对象信息;所述对象信息用于指示执行所述测试案例时所需输入的对象;所述对象包括所述测试案例的输入要素;
信息生成单元,用于在获取到所述用户的第二触发操作的情况下,调用所述输入要素,生成页面元素定位信息;
案例执行单元,用于在获取到所述用户的第三触发操作的情况下,调用所述页面元素定位信息,执行所述测试案例。
一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,所述程序执行所述的测试案例执行方法。
一种测试案例执行设备,包括:处理器、存储器和总线;所述处理器与所述存储器通过所述总线连接;
所述存储器用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行所述的测试案例执行方法。
本申请提供的技术方案,获取用户基于预设案例模板所输入的参数信息,参数信息包括执行测试案例时所需要输入的参数的数值。在获取到用户的第一触发操作的情况下,调用参数,生成测试案例。获取用户基于预设对象模板所输入的对象信息,对象信息用于指示执行测试案例时所需输入的对象,对象包括测试案例的输入要素。在获取到用户的第二触发操作的情况下,调用输入要素,生成页面元素定位信息。在获取到用户的第三触发操作的情况下,调用页面元素定位信息,执行测试案例。与现有技术相比,本申请只需测试人员根据预设案例模板输入参数信息、根据预设对象模板输入对象信息、以及触发相应的操作,即可实现测试案例的自动化生成与执行,无需进行测试案例的编程,能够降低对测试人员的编程能力要求。此外,在测试需求有变动的情况下,只需重新输入参数信息和对象信息,便能够实现测试案例的自动化调整和执行,无需测试人员进行二次编程调整测试案例,减少测试案例的调整时间,从而提高测试执行过程的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a为本申请实施例提供的一种测试案例执行方法的示意图;
图1b为本申请实施例提供的一种预设案例模板的示意图;
图1c为本申请实施例提供的一种功能清单的示意图;
图1d为本申请实施例提供的一种自动化测试案例生成工具的操作示意图;
图1e为本申请实施例提供的一种案例表的示意图;
图1f为本申请实施例提供的一种预设对象模板的示意图;
图1g为本申请实施例提供的一种对象列表的示意图;
图1h为本申请实施例提供的一种登陆界面的示意图;
图2a为本申请实施例提供的另一种功能清单的示意图;
图2b为本申请实施例提供的另一种预设案例模板的示意图;
图2c为本申请实施例提供的另一种案例表的示意图;
图2d为本申请实施例提供的一种对象信息的示意图;
图2e为本申请实施例提供的一种对象列表的示意图;
图3为本申请实施例提供的另一种测试案例执行方法的示意图;
图4为本申请实施例提供的一种测试案例执行装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请所述的流程应用于软件测试系统中,具体的,可由系统主机执行,用于实现测试案例自动化执行的同时,提高测试执行过程的效率。
如图1a所示,为本申请实施例提供的一种测试案例执行方法的示意图,包括如下步骤:
S101:获取测试人员基于预设案例模板所输入的参数信息。
其中,预设案例模板包括参数项,参数项包括被测系统(也可理解为被测项目、或者被测软件)的功能需求、测试案例(即系统功能,在软件测试过程中,测试案例实质就是用于评估系统功能的有效性)的路径信息、测试案例的测试指令、以及输入要素(即系统功能的输入项)的业务规则。
具体的,预设案例模板可参见下述图1b所示,在图1b中,“后续计划从TFS导出(理想状态)”用于指示被测系统的功能需求,“进入路径”用于指示测试案例的路径信息,“提交按钮名称”用于指示测试案例的测试指令的指示信息(例如页面登录功能中的“登录”按钮),“可分输入要素”和“不可分输入要素”均用于指示输入要素的业务规则。
功能需求包括但不限于:“功能”(即测试案例的功能点)、“需求依据”(即测试案例的参考依据)、“测试需求编号”(即测试案例的预设编号)、“所在目录”(即测试案例的目录结构)、以及“业务领域”(即测试案例所在的业务领域)。
在软件开发领域中,功能点具体指的是实现功能需求的多个模块,再细分可以表示每个模块里的多个动作所实现的内容,在本申请实施例中,以“增、删、改、查”等动作作为功能点的基本粒度,描述测试案例的具体功能。在软件开发的系统设计阶段,软件的开发人员、业务人员和测试人员需统一被测系统的功能需求,即制定一份被测系统的功能清单。以境内外币借款系统为例,具体的功能清单可以参见下述图1c所示。
所谓的路径信息,是指调用被测系统中各个系统功能时所需执行的操作步骤。具体的,以打开浏览器主页面为起始、至功能操作页面终止的用户操作步骤为例,具体需要明确系统包含的页面数量、页面间的链接关系、功能与页面的对应关系、每个页面的进入路径(从首页到本页面的所有操作步骤)以及退出路径(离开首页时的最后一个操作)等信息。
所谓的测试指令,即用于触发测试案例执行的开关。
所谓的业务规则,用于指示输入要素与输出结果的对应关系(即图1b所示的“可分输入要素”)、以及要素组合与输出结果的对应关系(即图1b所示的“不可分输入要素”),要素组合为多个输入要素的组合。以注册用户功能为例,“不可分输入要素”包括“用户名”、“密码”、“密码确认”、以及“邮箱”。“用户名”与输出结果的对应关系为:未注册过的员工编码才能注册为“用户名”、已被注册为“用户名”的员工编码无法重复注册。“密码”与输出结果的对应关系:“密码”必须与“密码确认”填写一致,“密码”的输入字段位数不少于8位、且包含大小写字母的字母和数字的组合。
“可分输入要素”包括:“输入属性”(即上述提及对象类型)、“属性检查点1”(例如,文本框字符下限、复选框字符下限等)、“属性检查点2”(例如,文本框字符上限、复选框字符上限等)、“默认值”(若没有默认值,则字段为“否”)、“是否必输项”(字段为“是”或“否”)、“业务规则取值”(即符合取值范围的输入要素的字符串)、以及“不合理取值”(即不符合取值范围的输入要素的字符串)。
“不可分输入要素”包括:“不可分要素组号”(即输入要素的预设编号)、“输入要素”(即要素组合所包含的输入要素)、“输入属性”(即输入要素的对象类型)、“属性检查点1”(例如,文本框字符下限、复选框字符下限等)、“属性检查点2”(例如,文本框字符上限、复选框字符上限等)、“默认值”(若没有默认值,则字段为“否”)、“是否必输项”(字段为“是”或“否”)、“业务规则取值”(即符合取值条件的字符串)、以及“不合理取值”(即不符合取值条件的字符串)。
所谓的参数信息,即执行测试案例时所需要输入的参数的数值,具体的,测试人员基于预设案例模板所输入的参数信息,如图1b所示。
S102:获取测试人员所输入的案例格式。
其中,案例格式包括但不限于为sheet表格(即一种现有的表格类型)、excel表格等。
S103:在获取到测试人员的第一触发操作的情况下,触发预设第一进程,调用参数信息所指示的参数,生成符合案例格式的测试案例。
其中,预设第一进程包括但不限于自动化测试案例生成工具(一种现有的测试案例生成工具)。测试案例包括要素级测试案例和功能级测试案例,要素级测试案例和功能级测试案例各自所针对的测试对象互不相同,要素级测试案例用于测试输入要素的等价类(即与输入要素关联的字符串),功能级测试案例用于测试要素组合的取值。
具体的,以下述图1b所示的参数信息、案例格式为sheet表格为例,触发自动化测试案例生成工具的步骤如图1d所示,此外,自动化测试案例生成工具实现测试案例生成的过程包括:
1、生成第一案例,第一案例用于检查“默认值”;
2、生成第二案例,第二案例用于检查“必输项标识”;
3、生成第三案例,第三案例用于检查单个取值下“必输项不输入”的反向等价类(即与“必输项”无关的数值);
4、在确定输入要素为必输项的情况下,生成第四案例,第四案例用于检查单个取值下“必输项不输入”的反向等价类(即与“必输项”无关的字符串);
5、在确定输入要素为“可分输入要素”的情况下,生成第五案例,第五案例用于检查“人工填写的反向取值”的反向等价类(即与“反向取值”无关的字符串);
6、生成第六案例,第六案例用于检查“可分输入要素”的各个正向取值(即满足“业务规则取值”所指示的取值条件的字符串)的组合;
7、生成第七案例,第七案例用于检查“不可分输入要素”的各个正向取值(即满足“业务规则取值”所指示的取值条件的字符串);
8、生成第八案例,第八案例用于检查“不可分输入要素”的各个反向取值(即不满足“业务规则取值”所指示的取值条件的字符串)。
9、组合第一案例、第二案例、第三案例、第四案例、第五案例、第六案例、第七案例和第八案例,得到测试案例。
需要说明的是,上述具体实现过程仅仅用于举例说明。
S104:将测试案例存储至案例表中。
其中,具体的案例表可以参见下述图1e所示。
S105:获取测试人员基于预设对象模板所输入的对象信息。
其中,预设对象模板包括多个信息项,具体的预设对象模板,可以参见下述图1f所示。
需要说明的是,对象信息用于指示执行测试案例时所需输入的对象,对象包括测试案例的输入要素,以话费充值功能为例,输入要素包括“充值50元”、“充值100元”和“充值200元”,与输入要素对应的输出结果包括“充值成功并退卡”、“找零”和“错误提示”。
在本申请实施例中,对象信息基于自然语言描述,对象信息包括对象的对象名、对象类型、框架(Frame)标签(现有html语言中的属于)、框架值(即框架标签的属性值)、标签(现有html语言中的术语)以及标签值(即标签的属性值)。具体的,对象类型包括但不限于文本框、复选框、下位框、图片以及链接等类型,并且每个对象都只能拥有一个框架标签,但是每个对象却可以拥有多个标签。
此外,被测系统通常为web类项目,由于web类项目的前端页面(即上述提及的系统功能)一般采用html语言进行编程,因此,前端页面中的每个页面元素(即上述提及的对象)均都使用“标签+属性值”的方式进行编码标记。因此,通过浏览器对web类项目进行可视化解析,获取各个页面元素的标签,为软件测试领域中的公知常识,这里不再赘述。
在软件开发的系统设计阶段,软件的开发人员、业务人员和测试人员需统一对象信息,即制定一份如表1所示的表单。
表1
需要说明的是,上述表1所示的内容仅仅用于参考。表1中的“规则”用于指示对象信息的输入格式。
S106:在获取到测试人员的第二触发操作的情况下,解析输入要素的对象类型,生成对象类型信息,并将对象类型信息存储至输入类型字符串中。
其中,对象类型信息包括可被预设第二进程识别的第一参数,第一参数用于指示输入要素的对象类型。预设第二进程包括但不限于为自动化测试案例执行工具。
S107:解析输入要素的框架标签和框架值,生成对象帧信息,并将对象帧信息存储至帧信息字符串中。
其中,对象帧信息包括可被预设第二进程识别的第二参数,第二参数用于指示输入要素的框架标签和框架值。
S108:解析输入要素的标签和标签值,生成对象标签信息,并将对象标签信息存储至标签信息字符串中。
其中,对象标签信息包括可被预设第二进程识别的第三参数,第三参数用于指示输入要素的标签和标签值。
S109:将输入类型字符串、帧信息字符串、以及标签信息字符串进行组合,生成页面元素定位信息,并将页面元素定位信息存储至对象列表中。
其中,具体的对象列表可参见下述图1g所示。
S110:将对象列表中的页面元素定位信息进行编码,得到编码定位信息。
其中,将对象列表中的页面元素定位信息进行编码的具体实现过程,为本领域技术人员所熟悉的公知常识,这里不再赘述。
S111:在获取到测试人员的第三触发操作的情况下,触发预设第二进程,调用编码定位信息,执行测试案例。
具体的,以图1h所示的登陆界面为例,触发自动化测试案例执行工具,调用编码定位信息,执行测试案例的具体过程包括:
1、解析案例表中的测试案例,得到操作信息(即“用户名”输入“caicen”、“密码”输入“123456”、以及点击“登录”按键)、以及与操作信息对应的页面元素名称(即“用户名”、“密码”、以及“登录”等输入要素的对象名);
2、从对象列表(即图1h中的“对象库信息”)中查找涵盖页面元素名称的编码定位信息;
3、根据编码定位信息,执行操作信息(即在“科技管理工作台”界面输入“用户名”、输入“密码”、以及点击“登录”按键)。
需要说明的是,上述具体实现过程仅仅用于举例说明。
为了方便理解上述实施例示出的流程,以“某某系统”的登录功能为例,阐述本实施例所述流程在软件开发过程中的具体应用。
具体的,在软件开发的系统设计阶段,经由测试人员、业务人员和开发人员三方沟通,梳理“某某系统”登录功能的功能需求,具体的,登录功能涉及一个登陆界面、以及一个测试案例(即数据质量管理系统的登录),功能需求整理为下述图2a所示的功能清单。而后,依据下述步骤生成“某某系统”的登录功能的测试案例,并进行测试案例的自动化测试:
1、获取测试人员基于预设案例模板所输入的参数信息、以及输入的案例格式。具体的,测试人员所输入的参数信息如图2b所示,“进入路径”为空,“提交按钮名称”为“登录”,“不可分输入要素”包括“username”和“password”和“登录”,“username”和“password”的“输入属性”均为文本框、“属性检查点1”均为“-5”、“属性检查点2”均为“-5”、“默认值”均为“否”、“是否必输项”均为“是”、“不合理取值”均为空、且“业务规则取值”均为“420822000002103117”;
2、在获取到测试人员内的第一触发操作的情况下,触发自动化测试案例生成工具,调用参数信息所指示的参数和案例格式,生成测试案例,具体的,所生成的测试案例如图2c所示;
3、获取测试人员基于预设对象模板所输入的对象信息,具体的,测试人员所输入的对象信息如图2d所示;
4、在获取到测试人员的第二触发操作的情况下,解析对象信息,得到输入类型字符串、帧信息字符串以及标签信息字符串,组合输入类型字符串、帧信息字符串以及标签信息字符串,得到页面元素定位信息,并将页面元素定位信息存储至对象列表中,页面元素定位信息如图2e所示;
5、将对象列表中页面元素定位信息进行编码,得到编码定位信息,并在获取到测试人员的第三触发操作的情况下,触发预设第二进程,调用编码定位信息,执行测试案例。
需要说明的是,上述具体实现过程仅仅用于举例说明。
综上所述,与现有技术相比,本实施例只需测试人员根据预设案例模板输入参数信息、根据预设对象模板输入对象信息、以及触发相应的操作,即可实现测试案例的自动化生成与执行,无需进行测试案例的编程,能够降低对测试人员的编程能力要求。此外,在测试需求有变动的情况下,只需重新输入参数信息和对象信息,便能够实现测试案例的自动化调整和执行,无需测试人员进行二次编程调整测试案例,减少测试案例的调整时间,从而提高测试执行过程的效率。
需要说明的是,上述实施例提及的S102,为本申请所述测试案例执行方法的一种可选的实现方式。此外,上述实施例提及的S104,也为本申请所述测试案例执行方法的一种可选的实现方式。为此,上述实施例提及的流程,可以概括为图3所示的方法。
如图3所示,为本申请实施例提供的另一种测试案例执行方法的示意图,包括如下步骤:
S301:获取用户基于预设案例模板所输入的参数信息。
其中,参数信息包括执行测试案例时所需要输入的参数的数值。
S302:在获取到用户的第一触发操作的情况下,调用参数,生成测试案例。
S303:获取用户基于预设对象模板所输入的对象信息。
其中,对象信息用于指示执行测试案例时所需输入的对象,对象包括测试案例的输入要素。
S304:在获取到用户的第二触发操作的情况下,调用输入要素,生成页面元素定位信息。
S305:在获取到用户的第三触发操作的情况下,调用页面元素定位信息,执行测试案例。
综上所述,与现有技术相比,本实施例只需测试人员根据预设案例模板输入参数信息、根据预设对象模板输入对象信息、以及触发相应的操作,即可实现测试案例的自动化生成与执行,无需进行测试案例的编程,能够降低对测试人员的编程能力要求。此外,在测试需求有变动的情况下,只需重新输入参数信息和对象信息,便能够实现测试案例的自动化调整和执行,无需测试人员进行二次编程调整测试案例,减少测试案例的调整时间,从而提高测试执行过程的效率。
与上述本申请实施例所述的测试案例执行方法相对应,本申请还提供了一种测试案例执行装置。
如图4所示,为本申请实施例提供的一种测试案例执行装置的结构示意图,包括:
参数获取单元100,用于获取用户基于预设案例模板所输入的参数信息,参数信息包括执行测试案例时所需要输入的参数的数值。
其中,预设案例模板包括参数项,参数项包括被测系统的功能需求、测试案例的路径信息、测试案例的测试指令、以及输入要素的业务规则,参数信息为参数项的数值。
格式获取单元200,用于获取用户输入的案例格式。
案例生成单元300,用于在获取到用户的第一触发操作的情况下,调用参数,生成符合案例格式的测试案例。
案例存储单元400,用于将测试案例存储至案例表中。
对象获取单元500,用于获取用户基于预设对象模板所输入的对象信息,对象信息用于指示执行测试案例时所需输入的对象,对象包括测试案例的输入要素。对象信息包括对象的对象名、对象类型、框架标签、框架值、标签以及标签值。
信息生成单元600,用于在获取到用户的第二触发操作的情况下,调用输入要素,生成页面元素定位信息。
其中,信息生成单元600用于调用输入要素,生成页面元素定位信息的具体过程包括:解析输入要素的对象类型,生成对象类型信息,并将对象类型信息存储至输入类型字符串中,解析输入要素的框架标签和框架值,生成对象帧信息,并将对象帧信息存储至帧信息字符串中,解析输入要素的标签和标签值,生成对象标签信息,并将对象标签信息存储至标签信息字符串中,将输入类型字符串、帧信息字符串、以及标签信息字符串进行组合,生成页面元素定位信息。
信息存储单元700,用于将页面元素定位信息存储至对象列表中。
案例执行单元800,用于在获取到用户的第三触发操作的情况下,调用页面元素定位信息,执行测试案例。
其中,案例执行单元800用于调用页面元素定位信息,执行测试案例的具体过程包括:对页面元素定位信息进行编码,得到编码定位信息,并调用编码定位信息,执行测试案例。
综上所述,与现有技术相比,本实施例只需测试人员根据预设案例模板输入参数信息、根据预设对象模板输入对象信息、以及触发相应的操作,即可实现测试案例的自动化生成与执行,无需进行测试案例的编程,能够降低对测试人员的编程能力要求。此外,在测试需求有变动的情况下,只需重新输入参数信息和对象信息,便能够实现测试案例的自动化调整和执行,无需测试人员进行二次编程调整测试案例,减少测试案例的调整时间,从而提高测试执行过程的效率。
本申请还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的程序,其中,程序执行上述本申请提供的测试案例执行方法。
本申请还提供了一种测试案例执行设备,包括:处理器、存储器和总线。处理器与存储器通过总线连接,存储器用于存储程序,处理器用于运行程序,其中,程序运行时执行上述本申请提供的测试案例执行方法,包括如下步骤:
获取用户基于预设案例模板所输入的参数信息;所述参数信息包括执行测试案例时所需要输入的参数的数值;
在获取到所述用户的第一触发操作的情况下,调用所述参数,生成所述测试案例;
获取所述用户基于预设对象模板所输入的对象信息;所述对象信息用于指示执行所述测试案例时所需输入的对象;所述对象包括所述测试案例的输入要素;
在获取到所述用户的第二触发操作的情况下,调用所述输入要素,生成页面元素定位信息;
在获取到所述用户的第三触发操作的情况下,调用所述页面元素定位信息,执行所述测试案例。
可选的,所述获取到所述用户的第一触发操作之前,还包括:
获取所述用户输入的案例格式;
所述调用所述参数,生成所述测试案例,包括:
调用所述参数,生成符合所述案例格式的所述测试案例。
可选的,所述调用所述参数,生成所述测试案例之后,还包括:
将所述测试案例存储至案例表中。
可选的,所述对象信息包括所述对象的对象名、对象类型、框架标签、框架值、标签以及标签值;
所述调用所述输入要素,生成页面元素定位信息,包括:
解析所述输入要素的对象类型,生成对象类型信息,并将所述对象类型信息存储至输入类型字符串中;
解析所述输入要素的框架标签和框架值,生成对象帧信息,并将所述对象帧信息存储至帧信息字符串中;
解析所述输入要素的标签和标签值,生成对象标签信息,并将所述对象标签信息存储至标签信息字符串中;
将所述输入类型字符串、所述帧信息字符串、以及所述标签信息字符串进行组合,生成页面元素定位信息。
可选的,所述调用所述输入要素,生成页面元素定位信息之后,还包括:
将所述页面元素定位信息存储至对象列表中。
可选的,调用所述页面元素定位信息,执行所述测试案例,包括:
对所述页面元素定位信息进行编码,得到编码定位信息,并调用所述编码定位信息,执行所述测试案例。
可选的,所述预设案例模板包括参数项,所述参数项包括被测系统的功能需求、所述测试案例的路径信息、所述测试案例的测试指令、以及所述输入要素的业务规则;
所述参数信息为所述参数项的数值。
本申请实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种测试案例执行方法,其特征在于,包括:
获取用户基于预设案例模板所输入的参数信息;所述参数信息包括执行测试案例时所需要输入的参数的数值;所述预设案例模板包括参数项,所述参数项包括被测系统的功能需求、所述测试案例的路径信息、所述测试案例的测试指令、以及输入要素的业务规则;所述参数信息为所述参数项的数值;所述路径信息用于指示调用被测系统中各个系统功能时所需执行的操作步骤;所述测试指令,为用于触发测试案例执行的开关;
在获取到所述用户的第一触发操作的情况下,调用所述参数,生成所述测试案例;
获取所述用户基于预设对象模板所输入的对象信息;所述对象信息用于指示执行所述测试案例时所需输入的对象;所述对象包括所述测试案例的输入要素;所述对象信息包括所述对象的对象名、对象类型、框架标签、框架值、标签以及标签值;
在获取到所述用户的第二触发操作的情况下,调用所述输入要素,生成页面元素定位信息;所述调用所述输入要素,生成页面元素定位信息,包括:解析所述输入要素的对象类型,生成对象类型信息,并将所述对象类型信息存储至输入类型字符串中;解析所述输入要素的框架标签和框架值,生成对象帧信息,并将所述对象帧信息存储至帧信息字符串中;解析所述输入要素的标签和标签值,生成对象标签信息,并将所述对象标签信息存储至标签信息字符串中;将所述输入类型字符串、所述帧信息字符串、以及所述标签信息字符串进行组合,生成页面元素定位信息;
在获取到所述用户的第三触发操作的情况下,调用所述页面元素定位信息,执行所述测试案例。
2.根据权利要求1所述的方法,其特征在于,所述获取到所述用户的第一触发操作之前,还包括:
获取所述用户输入的案例格式;
所述调用所述参数,生成所述测试案例,包括:
调用所述参数,生成符合所述案例格式的所述测试案例。
3.根据权利要求1所述的方法,其特征在于,所述调用所述参数,生成所述测试案例之后,还包括:
将所述测试案例存储至案例表中。
4.根据权利要求1所述的方法,其特征在于,所述调用所述输入要素,生成页面元素定位信息之后,还包括:
将所述页面元素定位信息存储至对象列表中。
5.根据权利要求1所述的方法,其特征在于,调用所述页面元素定位信息,执行所述测试案例,包括:
对所述页面元素定位信息进行编码,得到编码定位信息,并调用所述编码定位信息,执行所述测试案例。
6.一种测试案例执行装置,其特征在于,包括:
参数获取单元,用于获取用户基于预设案例模板所输入的参数信息;所述参数信息包括执行测试案例时所需要输入的参数的数值;所述预设案例模板包括参数项,所述参数项包括被测系统的功能需求、所述测试案例的路径信息、所述测试案例的测试指令、以及输入要素的业务规则;所述参数信息为所述参数项的数值;所述路径信息用于指示调用被测系统中各个系统功能时所需执行的操作步骤;所述测试指令,为用于触发测试案例执行的开关;
案例生成单元,用于在获取到所述用户的第一触发操作的情况下,调用所述参数,生成所述测试案例;
对象获取单元,用于获取所述用户基于预设对象模板所输入的对象信息;所述对象信息用于指示执行所述测试案例时所需输入的对象;所述对象包括所述测试案例的输入要素;所述对象信息包括所述对象的对象名、对象类型、框架标签、框架值、标签以及标签值;
信息生成单元,用于在获取到所述用户的第二触发操作的情况下,调用所述输入要素,生成页面元素定位信息;
所述信息生成单元, 具体用于调用输入要素,生成页面元素定位信息的具体过程包括:解析输入要素的对象类型,生成对象类型信息,并将对象类型信息存储至输入类型字符串中,解析输入要素的框架标签和框架值,生成对象帧信息,并将对象帧信息存储至帧信息字符串中,解析输入要素的标签和标签值,生成对象标签信息,并将对象标签信息存储至标签信息字符串中,将输入类型字符串、帧信息字符串、以及标签信息字符串进行组合,生成页面元素定位信息;
案例执行单元,用于在获取到所述用户的第三触发操作的情况下,调用所述页面元素定位信息,执行所述测试案例。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的程序,其中,所述程序执行权利要求1-5任一所述的测试案例执行方法。
8.一种测试案例执行设备,其特征在于,包括:处理器、存储器和总线;所述处理器与所述存储器通过所述总线连接;
所述存储器用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1-5任一所述的测试案例执行方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011565225.3A CN112579465B (zh) | 2020-12-25 | 2020-12-25 | 一种测试案例执行方法、装置、存储介质和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011565225.3A CN112579465B (zh) | 2020-12-25 | 2020-12-25 | 一种测试案例执行方法、装置、存储介质和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112579465A CN112579465A (zh) | 2021-03-30 |
CN112579465B true CN112579465B (zh) | 2024-08-06 |
Family
ID=75140670
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011565225.3A Active CN112579465B (zh) | 2020-12-25 | 2020-12-25 | 一种测试案例执行方法、装置、存储介质和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112579465B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113672520B (zh) * | 2021-09-08 | 2024-06-18 | 京东科技控股股份有限公司 | 测试案例的生成方法、装置、电子设备及存储介质 |
CN113791982A (zh) * | 2021-09-18 | 2021-12-14 | 中国农业银行股份有限公司 | 一种测试方案生成方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103186457A (zh) * | 2011-12-29 | 2013-07-03 | 阿里巴巴集团控股有限公司 | 一种自动生成测试用例的方法和装置 |
CN107577607A (zh) * | 2017-09-07 | 2018-01-12 | 携程旅游信息技术(上海)有限公司 | 用户界面自动化测试方法、装置、电子设备、存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9552283B2 (en) * | 2007-11-12 | 2017-01-24 | Ca, Inc. | Spreadsheet data transfer objects |
KR101728170B1 (ko) * | 2011-03-21 | 2017-04-19 | 네이버 주식회사 | 키워드에 기반하여 웹 서비스의 테스트를 자동적으로 수행하는 시스템 및 방법 |
CN103984624A (zh) * | 2014-04-29 | 2014-08-13 | 北京京东尚科信息技术有限公司 | 一种网页自动化测试方法及系统 |
US9189377B1 (en) * | 2014-06-02 | 2015-11-17 | Bank Of America Corporation | Automation testing using descriptive maps |
CN107908559B (zh) * | 2017-11-15 | 2021-05-07 | 中国农业银行股份有限公司 | 一种测试案例设计方法及装置 |
CN108710571B (zh) * | 2018-05-14 | 2021-11-23 | 中国建设银行股份有限公司 | 一种生成自动化测试代码的方法和装置 |
-
2020
- 2020-12-25 CN CN202011565225.3A patent/CN112579465B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103186457A (zh) * | 2011-12-29 | 2013-07-03 | 阿里巴巴集团控股有限公司 | 一种自动生成测试用例的方法和装置 |
CN107577607A (zh) * | 2017-09-07 | 2018-01-12 | 携程旅游信息技术(上海)有限公司 | 用户界面自动化测试方法、装置、电子设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112579465A (zh) | 2021-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102135938B (zh) | 一种软件产品测试方法及系统 | |
CN112579465B (zh) | 一种测试案例执行方法、装置、存储介质和设备 | |
CN110908891A (zh) | 一种测试数据生成方法、装置、电子设备及存储介质 | |
CN107908559B (zh) | 一种测试案例设计方法及装置 | |
CN112651218A (zh) | 一种标书自动生成方法、管理方法、介质以及计算机 | |
CN105260300B (zh) | 基于会计准则通用分类标准应用平台的业务测试方法 | |
CN111985902B (zh) | 跨系统信息协同管理方法、装置、设备和存储介质 | |
CN110363662A (zh) | 一种个人信用评分系统 | |
CN112488549A (zh) | 发电设备的运维方法、装置及计算机可读存储介质 | |
CN113297251A (zh) | 多源数据检索方法、装置、设备及存储介质 | |
CN116069300A (zh) | 工作流控制代码生成方法、装置、电子设备及存储介质 | |
Feichtinger et al. | Variability model transformations: towards unifying variability modeling | |
CN111563037A (zh) | 基于测试试题的测试优化方法及装置、存储介质、终端 | |
CN117194501B (zh) | Dcs趋势测点跳转逻辑组态的方法、系统、设备及介质 | |
CN117093497B (zh) | 测试报告处理方法、装置、电子设备及存储介质 | |
CN107562808B (zh) | 一种异构双链自动化数据的验证方法 | |
CN111984673B (zh) | 一种电网电能量计量系统树形结构模糊检索方法和装置 | |
CN113342647A (zh) | 一种测试数据的生成方法及装置 | |
Klein et al. | smartFIX: An adaptive system for document analysis and understanding | |
CN116646891A (zh) | 一种继电保护定值校核方法、装置和设备 | |
CN113704123B (zh) | 接口测试方法、装置、设备以及存储介质 | |
CN114996758A (zh) | 一种数据脱敏方法、装置及电子设备 | |
CN114417010A (zh) | 面向实时工作流的知识图谱构建方法、装置和存储介质 | |
CN114186974A (zh) | 一种多模型融合的开发任务关联方法、装置、设备及介质 | |
CN110110280B (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 |