CN113268412B - Web系统测试用例录制的控件解析方法、装置、设备和介质 - Google Patents

Web系统测试用例录制的控件解析方法、装置、设备和介质 Download PDF

Info

Publication number
CN113268412B
CN113268412B CN202110479575.6A CN202110479575A CN113268412B CN 113268412 B CN113268412 B CN 113268412B CN 202110479575 A CN202110479575 A CN 202110479575A CN 113268412 B CN113268412 B CN 113268412B
Authority
CN
China
Prior art keywords
control
class
name
analysis rule
rule
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
Application number
CN202110479575.6A
Other languages
English (en)
Other versions
CN113268412A (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.)
Moore Element Fujian Technology Co ltd
Original Assignee
Moore Element Fujian Technology Co 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 Moore Element Fujian Technology Co ltd filed Critical Moore Element Fujian Technology Co ltd
Priority to CN202110479575.6A priority Critical patent/CN113268412B/zh
Publication of CN113268412A publication Critical patent/CN113268412A/zh
Application granted granted Critical
Publication of CN113268412B publication Critical patent/CN113268412B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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

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

本发明提供一种Web系统测试用例录制的控件解析方法、装置、设备和介质,方法包括当自动化录制工具在录制Web系统测试用例的过程中遇到无法识别的控件时,通过分析该控件在页面上的实际结构,新增一用于识别该控件的解析规则保存在测试平台中,供所述自动化录制工具在后续录制时下载使用。通过上述技术方案本发明当利用既定解析规则无法解析遇到的控件名称时,即可通过新增相应的解析规则来完成解析,从而动态地适配各种各样的页面环境。

Description

Web系统测试用例录制的控件解析方法、装置、设备和介质
技术领域
本发明涉及计算机技术领域,特别涉及一种Web系统测试用例录制的控件解析方法、装置、设备和介质。
背景技术
传统的Web系统测试用例的自动化录制工具是通过监控用户的鼠标、键盘操作来提取被操作Web页面控件的信息(含:控件名称、Xpath、输入值)从而构建操作步骤,通过步骤回放来完成自动运行的效果。
由于自动化录制工具内部是通过既定的解析规则对被操作控件的名称进行解析,在当下Web前端技术日新月异、页面结构更新迭代迅速的大场景下,传统的录制方式往往很难对现有Web页面控件进行高度的正确识别。即使通过对工具进行适配和修改,在差异化大的页面结构面前,存在的隐患和人力成本的投入都是无法预估的。频繁出现提取页面控件信息时无法正确标注控件名称、xpath、输入值等信息的现象,因缺失控件名称会造成测试人员无法有效读懂录制的用例,严重影响后续对用例的修改、编辑等可视化操作。
于20080813公开的,公开号为CN101242621的中国发明公开了一种基于界面的自动化测试方法,首先,录制用例,保存测试窗口的录制数据;然后,根据所述录制数据对所述用例进行回放,保存所述测试窗口的回放数据;最后,对所述测试窗口的录制数据与回放数据进行比较并输出比较结果。从其描述的技术方案来说,提高了自动化测试的效率并扩大了其支持的范围。但对于录制过程中如何对控件进行解析却未提及。
于20100106公开的,公开号为CN101620564的中国发明公开了一种一种终端系统的录制回放模式自动化测试方法,包括依次进行的下述步骤:步骤10:对用户的实际操作进行录制,该实际操作包括鼠标操作,键盘操作,然后自动生成用户容易理解的脚本,脚本可手工编辑;步骤20:步骤10录制的过程中,插入检查点,自动测试时需检查此点的状态;步骤30:将步骤10生成的脚本回放,并自动执行测试,记录检查点的状态;步骤40:脚本回放完毕,对记录的检查点状态进行分析,并汇总测试结果,自动生成测试报告。从其描述的技术方案来说,对于GUI功能的测试提供可靠的检查点;节省测试的时间,可适用于终端嵌入式系统及非嵌入式系统的自动化功能测试,但同样对于录制过程中如何对控件进行解析却未提及。
于20191001公开的,公开号为CN110297759A的中国发明提供一种制作测试页面脚本的方法、装置、设备及存储介质,方法包括:对待测页面进行配置,生成测试配置信息;加载应用之前,根据H5页面读取的配置信息对待测页面的页面元素进行配置和布局;根据配置信息生成测试脚本,接收针对待测页面上的目标元素的第一测试指令,根据第一测试指令执行测试脚本,以识别目标元素在待测页面上的第一位置信息;根据第一位置信息预览当前被测试的预览页面,根据鼠标在预览页面上的行为数据跟踪并记录目标元素在预览页面上的第二位置信息;当根据输入待录制的待测页面的地址信息加载待测页面后,对测试脚本进行录制,得到自动化脚本。采用本方案能够提高定位页面上控件的精确度和效率,但这种定位只对控件的位置进行识别,无法实现对控件名称进行识别。
发明内容
本发明要解决的技术问题,在于提供一种Web系统测试用例录制的控件解析方法、装置、设备和介质,当利用既定解析规则无法解析遇到的控件名称时,通过了解该控件在页面上的实际结构,在测试平台中新增相应的解析规则来完成解析。
第一方面,本发明提供了一种Web系统测试用例录制的控件解析方法,当自动化录制工具在录制Web系统测试用例的过程中遇到无法识别的控件时,通过分析该控件在页面上的实际结构,新增一用于识别该控件的解析规则保存在测试平台中,供所述自动化录制工具在后续录制时下载使用。
第二方面,本发明提供了一种Web系统测试用例录制的控件解析装置,包括:
分析模块,用于当自动化录制工具在录制Web系统测试用例的过程中遇到无法识别的控件时,获取该控件在页面上的实际结构并进行分析;
解析规则新增模块,用于根据分析模块的分析结果,新增一用于识别该控件的解析规则并保存在测试平台中,供所述自动化录制工具在后续录制时下载使用。
第三方面,本发明提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面所述的方法。
第四方面,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述的方法。
本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:本发明能在利用既定解析规则无法解析遇到的控件名称时,通过分析该控件在页面上的实际结构,新增一用于识别该控件的解析规则保存在测试平台中,供所述自动化录制工具在后续录制时下载使用,即能通过再次录制时识别到控件,从而能够正确标注控件名称,动态地适配各种各样的页面环境。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明实施例一中方法中的流程图;
图2为本发明实施例中自动化录制工具的录制过程的流程图;
图3为本发明实施例中一控件在页面上的实际结构示意图;
图4为本发明用于解析图3所示控件的解析规则的内容示意图;
图5为本发明实施例中一测试用例数据进行可视化展示状态图;
图6为本发明一未识别控件在页面上的实际结构示意图;
图7为本发明新增的用于解析图6所示控件的解析规则的内容示意图;
图8为本发明实施例二中装置的结构示意图;
图9为本发明实施例三中电子设备的结构示意图;
图10为本发明实施例四中介质的结构示意图。
具体实施方式
本申请实施例通过提供一种Web系统测试用例录制的控件解析方法、装置、设备和介质,当利用既定解析规则无法解析遇到的控件名称时,通过了解该控件在页面上的实际结构,在测试平台中新增相应的解析规则来完成解析。
本申请实施例中的技术方案,总体思路如下:当自动化录制工具在录制Web系统测试用例的过程中遇到无法识别的控件时,通过分析该控件在页面上的实际结构,新增一用于识别该控件的解析规则保存在测试平台中,供所述自动化录制工具在后续录制时下载使用。
实施例一
如图1所示,本实施例提供一种Web系统测试用例录制的控件解析方法,当自动化录制工具在录制Web系统测试用例的过程中遇到无法识别的控件时,通过分析该控件在页面上的实际结构,新增一用于识别该控件的解析规则保存在测试平台中,供所述自动化录制工具在后续录制时下载使用。所述控件在页面上的实际结构可通过浏览器获取。
如图2所示,所述自动化录制工具的录制过程具体包括下述步骤:
S1、先从测试平台中下载当前维护好的解析规则,在下载完成后自动重构本地的解析规则库,生成当前解析规则库;
S2、进入监控状态,监控用户在Web页面上的所有键鼠操作,捕获当前被操作到的控件及控件输入值,提取控件信息并与当前解析规则库进行控件类匹配;若匹配成功,进入下一步;若匹配失败,将该控件标注为未识别控件,同时通知测试平台新增该控件类的解析规则后并回到步骤S1;
S3、获取当前控件类的所有名称解析规则,并依次用各个名称解析规则在当前Web页面上进行控件名称抓取,若抓取到符合规则的控件名称后,对该控件进行名称标注,若未抓取到符合规则的控件名称,则将该控件标注为未识别控件,同时通知测试平台新增该控件类的解析规则后并回到步骤S1;
如:图3所示,input输入框(实线框住部分,标注为1)通过查找其父级标签的同级标签span(实线框住部分,标注为2)下的文本内容来标注自身的名称。如图4所示,规则解读:tarel表示满足该规则的控件;tarname表示满足该规则的控件的名称元素。tarel标签中的属性表示要达到属性要求才能算控件满足规则要求,即,如图:tag=”input”是控件必须为input标签、attr=”type(‘text’)”是控件必须有type属性并且type属性必须为text;在满足tarel和tarname规则层级关系的条件下(即:控件的父级必须为div,名称标签必须为父级的同级标签),tarname标签中的属性表示属性要求才能算匹配名称成功,即,如图:tag=”span”是控件必须为span标签、namesource=”text()”是名称的内容取至span标签中的text文本)。
S4、根据用户本次对Web页面的操作顺序、Xpath、控件输入值、鼠标事件信息及抓取到的控件名称,生成测试用例。
后续需对用例的修改、编辑等可视化操作时,将生成的测试用例步骤保存到服务端数据库,服务端程序的用例编辑模块可从数据库中调取测试用例数据,并进行可视化展示,如图5所示。用户可对用例步骤进行编辑调整,调整后的用例再次保存到数据库。服务端程序的用例执行模块调用数据库中的用例进行自动执行。
其中,作为本实施例的一种更优或更为具体的实现方式,所述解析规则的新增过程具体是:
(1)创建一个自身标签<tarel>,并标注控件类型为input,必须包含type属性和class属性,并且type属性的值为text,class属性的值为layui-input,即:<tarel tag="input"attr="type('text');class('layui-input')"></tarel>;
(2)根据所述自身标签的层级关系构建标签层级,所述自身标签外套了若干层控件的元素类型标签,层数由控件在页面上的实际结构决定,最外层元素类型标签包含class属性,并且class属性的值为search_r,即:
Figure BDA0003048121770000061
其中,所述“?”根据控件的元素类型进行替换;
(3)根据控件所要获取的名称标签创建目标名称标签<tarname>,并标注控件类型为控件的元素类型“?”,目标名称标签包含classs属性,并且class属性值为search_l,控件名称内容namesource取自该标签的text文本,即:
<tarname tag="?"atrr="class('search_l')"namesource="text()">;
(4)至此,得到该控件类的解析规则并保存至测试平台中,该控件类的解析规则如下所示:
Figure BDA0003048121770000062
Figure BDA0003048121770000071
例如:无法识别的控件为下拉框控件,其在页面上的具体结构如图6所示,首先确认操作的控件是为图6标识为1的那一行标签(实线框住部分,标注为1),名称需要匹配到标识为2的标那一行签中的文本内容(实线框住部分,标注为2)。则新增一下拉框控件的解析规则具体是:
首先创建一个自身标签<tarel>,并标注控件类型为input,必须包含type属性和class属性,并且type属性的值必须为text,class属性的值必须为layui-input,即:
<tareltag="input"attr="type('text');class('layui-input')"></tarel>。
接下来根据自身标签的层级关系构建标签层级,由于下拉框控件的元素类型标签为div,下拉框控件的实现结构决定了标签层级为三层,因此需在自身标签外套三层的div标签,并且最外层div标签必须包含class属性,并且class属性的值必须为search_r,即:
Figure BDA0003048121770000072
层级关系构建完成后,我们所要提前的名称的标签就是当前最外层div的上面的div控件中的文本内容。
然后创建目标名称标签<tarname>,并标注控件类型必须为div,规定必须包含classs属性,并且class属性值必须为search_l(这样,在后续根据控件信息与当前解析规则库进行控件类匹配时,若匹配成功,名称内容namesource取自该标签的text文本),即:
<tarname tag="div"atrr="class('search_l')"namesource="text()">。
完成以上设置,就基本完成了一个解析规则从无到有的编写,编写完的解析规则最后如图7所示,完成后再测试平台中进行保存即可。
另外,解析规则通常采用模糊匹配原则对控件进行识别,从而抓取到控件名称,假设一解析规则为:
Figure BDA0003048121770000081
上述解析规则说明如下:
1、<?>表示随机标签,代表控件的元素类型,搜索时只校验层级,这样无论控件的元素类型是什么,都可模糊匹配到,若有指定标签名,如:<div>,则当前层级必须为div。
2、<tarname>表示该标签为名称元素,标签内属性说明:
a、tag为名词元素的标签名称,“?”表示不指定标签名称(若tarname没有tag,这默认为tag=”?”),同样“?”的使用,也是为了实现模糊匹配。
b、namesource为名称元素的名称取值方法,方法包括:text()表示取元素文本值;value()表示取元素value值;
c、当同一层有多个同标签元素,要使用index属性,使用如下:
1)当tag为“?”,如果index不填写,默认取同层次所有标签元素中的第一个,有填写就按填写的取;
2)当tag不为“?”时,如果index不填写,默认取同层次所有标签元素中的第一个,有填写则取同层次所有tag属性标签中填写的第几个。
3、<tarel>表示该标签为目标元素,标签内属性说明:
a、tag为目标元素的标签名称,必须指定。
b、attr为目标元素必须具备的属性,如:type('text')和type(),当括号中没有指定参数的时候表示只要拥有type属性即可,当括号中指定参数的时候表示type属性的值必须为该参数值。
c、defaultnamesource为元素默认名词,若拥defaultnamesource,则目标元素无需再去跨层级去寻找名词元素。
1)row_text():只有当目标元素tag=”table”的时候有效,表示取table第一行的内容作为名称(内容长度有上限);
2)text();value();取当前元素的文本或者value的值为元素名称;
3)Placeholder()取placeholder的值为元素名称。
基于同一发明构思,本申请还提供了与实施例一中的方法对应的装置,详见实施例二。
实施例二
如图8所示,在本实施例中提供了一种Web系统测试用例录制的控件解析装置,该装置可集成于测试平台中,包括:
分析模块,用于当自动化录制工具在录制Web系统测试用例的过程中遇到无法识别的控件时,获取该控件在页面上的实际结构并进行分析;
解析规则新增模块,用于根据分析模块的分析结果,新增一用于识别该控件的解析规则并保存在测试平台中,供所述自动化录制工具在后续录制时下载使用。
其中,作为本实施例的一种更优或更为具体的实现方式,如图2所示,所述自动化录制工具的录制过程具体包括下述步骤:
S1、先从测试平台中下载当前维护好的解析规则,在下载完成后自动重构本地的解析规则库,生成当前解析规则库;
S2、进入监控状态,监控用户在Web页面上的所有键鼠操作,捕获当前被操作到的控件及控件输入值,提取控件信息并与当前解析规则库进行控件类匹配;若匹配成功,进入下一步;若匹配失败,将该控件标注为未识别控件,同时通知测试平台新增该控件类的解析规则后并回到步骤S1;
S3、获取当前控件类的所有名称解析规则,并依次用各个名称解析规则在当前Web页面上进行控件名称抓取,若抓取到符合规则的控件名称后,对该控件进行名称标注,若未抓取到符合规则的控件名称,则将该控件标注为未识别控件,同时通知测试平台新增该控件类的解析规则后并回到步骤S1;
S4、根据用户本次对Web页面的操作顺序、Xpath、控件输入值、鼠标事件信息及抓取到的控件名称,生成测试用例。
所述分析模块是通过浏览器来获取控件在页面上的实际结构。
所述解析规则新增模块的新增过程具体是:
(1)创建一个自身标签<tarel>,并标注控件类型为input,必须包含type属性和class属性,并且type属性的值为text,class属性的值为layui-input,即:<tarel tag="input"attr="type('text');class('layui-input')"></tarel>;
(2)根据所述自身标签的层级关系构建标签层级,所述自身标签外套了若干层控件的元素类型标签,层数由控件在页面上的实际结构决定,最外层元素类型标签包含class属性,并且class属性的值为search_r,即:
Figure BDA0003048121770000101
其中,所述“?”根据控件的元素类型进行替换;
(3)根据控件所要获取的名称标签创建目标名称标签<tarname>,并标注控件类型为控件的元素类型“?”,目标名称标签包含classs属性,并且class属性值为search_l,控件名称内容namesource取自该标签的text文本,即:
<tarname tag="?"atrr="class('search_l')"namesource="text()">;
(4)至此,得到该控件类的解析规则并保存至测试平台中,该控件类的解析规则如下所示:
Figure BDA0003048121770000111
例如:无法识别的控件为下拉框控件,其在页面上的具体结构如图6所示,首先确认操作的控件是为图6标识为1的那一行标签,名称需要匹配到标识为2的标那一行签中的文本内容。则新增一下拉框控件的解析规则具体是:
首先创建一个自身标签<tarel>,并标注控件类型为input,必须包含type属性和class属性,并且type属性的值必须为text,class属性的值必须为layui-input,即:
<tareltag="input"attr="type('text');class('layui-input')"></tarel>。
接下来根据自身标签的层级关系构建标签层级,由于下拉框控件的元素类型标签为div,下拉框控件的实现结构决定了标签层级为三层,因此需在自身标签外套三层的div标签,并且最外层div标签必须包含class属性,并且class属性的值必须为search_r,即:
Figure BDA0003048121770000112
Figure BDA0003048121770000121
层级关系构建完成后,我们所要提前的名称的标签就是当前最外层div的上面的div控件中的文本内容。
然后创建目标名称标签<tarname>,并标注控件类型必须为div,规定必须包含classs属性,并且class属性值必须为search_l(这样,在后续根据控件信息与当前解析规则库进行控件类匹配时,若匹配成功,名称内容namesource取自该标签的text文本),即:
<tarname tag="div"atrr="class('search_l')"namesource="text()">。
完成以上设置,就基本完成了一个解析规则从无到有的编写,编写完的解析规则最后如图6所示,完成后再测试平台中进行保存即可。
由于本发明实施例二所介绍的装置,为实施本发明实施例一的方法所采用的装置,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该装置的具体结构及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的装置都属于本发明所欲保护的范围。
基于同一发明构思,本申请提供了实施例一对应的电子设备实施例,详见实施例三。
实施例三
本实施例提供了一种电子设备,如图9所示,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,可以实现实施例一中任一实施方式。
由于本实施例所介绍的电子设备为实施本申请实施例一中方法所采用的设备,故而基于本申请实施例一中所介绍的方法,本领域所属技术人员能够了解本实施例的电子设备的具体实施方式以及其各种变化形式,所以在此对于该电子设备如何实现本申请实施例中的方法不再详细介绍。只要本领域所属技术人员实施本申请实施例中的方法所采用的设备,都属于本申请所欲保护的范围。
基于同一发明构思,本申请提供了实施例一对应的存储介质,详见实施例四。
实施例四
本实施例提供一种计算机可读存储介质,如图10所示,其上存储有计算机程序,该计算机程序被处理器执行时,可以实现实施例一中任一实施方式。
本申请实施例中提供的技术方案,至少具有如下技术效果或优点:本发明能在利用既定解析规则无法解析遇到的控件名称时,通过分析该控件在页面上的实际结构,新增一用于识别该控件的解析规则保存在测试平台中,供所述自动化录制工具在后续录制时下载使用,即能通过再次录制时识别到控件,从而能够正确标注控件名称,动态地适配各种各样的页面环境。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置或系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。

Claims (8)

1.一种Web系统测试用例录制的控件解析方法,其特征在于:当自动化录制工具在录制Web系统测试用例的过程中遇到无法识别的控件时,通过分析该控件在页面上的实际结构,新增一用于识别该控件的解析规则保存在测试平台中,供所述自动化录制工具在后续录制时下载使用;
所述解析规则的新增过程具体是:
(1)创建一个自身标签<tarel>,并标注控件类型为input,必须包含type属性和class属性,并且type属性的值为text,class属性的值为layui-input,即:<tarel tag="input"attr="type('text');class('layui-input')"></tarel>;
(2)根据所述自身标签的层级关系构建标签层级,所述自身标签外套了若干层控件的元素类型标签,层数由控件在页面上的实际结构决定,最外层元素类型标签包含class属性,并且class属性的值为search_r,即:
Figure FDA0003652226930000011
其中,所述“?”根据控件的元素类型进行替换;
(3)根据控件所要获取的名称标签创建目标名称标签<tarname>,并标注控件类型为控件的元素类型“?”,目标名称标签包含classs属性,并且class属性值为search_l,控件名称内容namesource取自该标签的text文本,即:
<tarname tag="?"atrr="class('search_l')"namesource="text()">;
(4)至此,得到该控件类的解析规则并保存至测试平台中,该控件类的解析规则如下所示:
Figure FDA0003652226930000021
2.根据权利要求1所述的Web系统测试用例录制的控件解析方法,其特征在于:所述自动化录制工具的录制过程具体包括下述步骤:
S1、先从测试平台中下载当前维护好的解析规则,在下载完成后自动重构本地的解析规则库,生成当前解析规则库;
S2、进入监控状态,监控用户在Web页面上的所有键鼠操作,捕获当前被操作到的控件及控件输入值,提取控件信息并与当前解析规则库进行控件类匹配;若匹配成功,进入下一步;若匹配失败,将该控件标注为未识别控件,同时通知测试平台新增该控件类的解析规则后并回到步骤S1;
S3、获取当前控件类的所有名称解析规则,并依次用各个名称解析规则在当前Web页面上进行控件名称抓取,若抓取到符合规则的控件名称后,对该控件进行名称标注,若未抓取到符合规则的控件名称,则将该控件标注为未识别控件,同时通知测试平台新增该控件类的解析规则后并回到步骤S1;
S4、根据用户本次对Web页面的操作顺序、Xpath、控件输入值、鼠标事件信息及抓取到的控件名称,生成测试用例。
3.根据权利要求1所述的Web系统测试用例录制的控件解析方法,其特征在于:所述控件在页面上的实际结构通过浏览器获取。
4.一种Web系统测试用例录制的控件解析装置,其特征在于:包括:
分析模块,用于当自动化录制工具在录制Web系统测试用例的过程中遇到无法识别的控件时,获取该控件在页面上的实际结构并进行分析;
解析规则新增模块,用于根据分析模块的分析结果,新增一用于识别该控件的解析规则并保存在测试平台中,供所述自动化录制工具在后续录制时下载使用;
所述解析规则新增模块的新增过程具体是:
(1)创建一个自身标签<tarel>,并标注控件类型为input,必须包含type属性和class属性,并且type属性的值为text,class属性的值为layui-input,即:<tarel tag="input"attr="type('text');class('layui-input')"></tarel>;
(2)根据所述自身标签的层级关系构建标签层级,所述自身标签外套了若干层控件的元素类型标签,层数由控件在页面上的实际结构决定,最外层元素类型标签包含class属性,并且class属性的值为search_r,即:
Figure FDA0003652226930000031
其中,所述“?”根据控件的元素类型进行替换;
(3)根据控件所要获取的名称标签创建目标名称标签<tarname>,并标注控件类型为控件的元素类型“?”,目标名称标签包含classs属性,并且class属性值为search_l,控件名称内容namesource取自该标签的text文本,即:
<tarname tag="?"atrr="class('search_l')"namesource="text()">;
(4)至此,得到该控件类的解析规则并保存至测试平台中,该控件类的解析规则如下所示:
Figure FDA0003652226930000041
5.根据权利要求4所述的Web系统测试用例录制的控件解析装置,其特征在于:所述自动化录制工具的录制过程具体包括下述步骤:
S1、先从测试平台中下载当前维护好的解析规则,在下载完成后自动重构本地的解析规则库,生成当前解析规则库;
S2、进入监控状态,监控用户在Web页面上的所有键鼠操作,捕获当前被操作到的控件及控件输入值,提取控件信息并与当前解析规则库进行控件类匹配;若匹配成功,进入下一步;若匹配失败,将该控件标注为未识别控件,同时通知测试平台新增该控件类的解析规则后并回到步骤S1;
S3、获取当前控件类的所有名称解析规则,并依次用各个名称解析规则在当前Web页面上进行控件名称抓取,若抓取到符合规则的控件名称后,对该控件进行名称标注,若未抓取到符合规则的控件名称,则将该控件标注为未识别控件,同时通知测试平台新增该控件类的解析规则后并回到步骤S1;
S4、根据用户本次对Web页面的操作顺序、Xpath、控件输入值、鼠标事件信息及抓取到的控件名称,生成测试用例。
6.根据权利要求4所述的Web系统测试用例录制的控件解析装置,其特征在于:所述分析模块是通过浏览器来获取控件在页面上的实际结构。
7.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至3任一项所述的方法。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至3任一项所述的方法。
CN202110479575.6A 2021-04-30 2021-04-30 Web系统测试用例录制的控件解析方法、装置、设备和介质 Active CN113268412B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110479575.6A CN113268412B (zh) 2021-04-30 2021-04-30 Web系统测试用例录制的控件解析方法、装置、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110479575.6A CN113268412B (zh) 2021-04-30 2021-04-30 Web系统测试用例录制的控件解析方法、装置、设备和介质

Publications (2)

Publication Number Publication Date
CN113268412A CN113268412A (zh) 2021-08-17
CN113268412B true CN113268412B (zh) 2022-08-30

Family

ID=77229895

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110479575.6A Active CN113268412B (zh) 2021-04-30 2021-04-30 Web系统测试用例录制的控件解析方法、装置、设备和介质

Country Status (1)

Country Link
CN (1) CN113268412B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102541728A (zh) * 2010-12-14 2012-07-04 北京新媒传信科技有限公司 扩展自动化测试工具识别控件的方法
CN106446123A (zh) * 2016-09-19 2017-02-22 成都知道创宇信息技术有限公司 一种网页中验证码元素识别方法
WO2018233032A1 (zh) * 2017-06-21 2018-12-27 深圳市盛路物联通讯技术有限公司 一种物联网数据的上报控制方法及系统
CN109783388A (zh) * 2019-01-16 2019-05-21 北京金山云网络技术有限公司 Ui自动化测试方法、装置及电子设备
CN110427187A (zh) * 2019-07-31 2019-11-08 山东浪潮通软信息科技有限公司 一种基于html自定义属性解析的表单可视化布局方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110765012A (zh) * 2019-10-15 2020-02-07 北京信安世纪科技股份有限公司 一种自动化测试脚本生成及解析执行方法
CN111274156B (zh) * 2020-02-25 2023-06-06 中信银行股份有限公司 兼容多框架页面的自动识别方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102541728A (zh) * 2010-12-14 2012-07-04 北京新媒传信科技有限公司 扩展自动化测试工具识别控件的方法
CN106446123A (zh) * 2016-09-19 2017-02-22 成都知道创宇信息技术有限公司 一种网页中验证码元素识别方法
WO2018233032A1 (zh) * 2017-06-21 2018-12-27 深圳市盛路物联通讯技术有限公司 一种物联网数据的上报控制方法及系统
CN109783388A (zh) * 2019-01-16 2019-05-21 北京金山云网络技术有限公司 Ui自动化测试方法、装置及电子设备
CN110427187A (zh) * 2019-07-31 2019-11-08 山东浪潮通软信息科技有限公司 一种基于html自定义属性解析的表单可视化布局方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
delphi中的XML解析控件TXMLDocument的用法;云之灵;《公开网址:https://www.cnblogs.com/spiritofcloud/p/3980388.html》;20140918;第1-4页 *

Also Published As

Publication number Publication date
CN113268412A (zh) 2021-08-17

Similar Documents

Publication Publication Date Title
US7853924B2 (en) Systems and methods for processing non-functional commentary of computer source code
US9207933B2 (en) Identifying authors of changes between multiple versions of a file
US9760347B2 (en) Method and system to identify GUI objects for non-markup-language-presented applications
US7661053B2 (en) Methods and apparatus for patternizing device responses
CN102804147A (zh) 执行abap源代码的代码检查的代码检查执行系统
US20110307488A1 (en) Information processing apparatus, information processing method, and program
US20090064088A1 (en) Method and system for displaying http session entry and exit points
El-Ramly et al. Mining system-user interaction traces for use case models
CN115238655A (zh) 一种json数据编辑方法和装置
JP3601675B2 (ja) 情報検索装置、情報検索方法、及び記録媒体
WO2007118271A1 (en) A method and system and product for conditioning software
CN114003269A (zh) 组件处理方法、装置、电子设备及存储介质
CN113901169A (zh) 信息处理方法、装置、电子设备及存储介质
CN106570133A (zh) 一种可视化的网页信息提取规则的构建方法和装置
US20090064102A1 (en) Method and system for navigationally displaying http session entry and exit points
US20130179365A1 (en) Systems and methods of rapid business discovery and transformation of business processes
CN113268412B (zh) Web系统测试用例录制的控件解析方法、装置、设备和介质
CN113805861B (zh) 基于机器学习的代码生成方法、代码编辑系统及存储介质
CN115481025A (zh) 自动化测试的脚本录制方法、装置、计算机设备及介质
CN107015955B (zh) 文档编辑方法和装置
CN112579456B (zh) 一种Web自动化测试方法及装置
CN112667502A (zh) 页面测试方法、装置及介质
JP2012173745A (ja) データベース解析装置及びデータベース解析プログラム
CN115248803B (zh) 适用于网盘文件的收藏方法、装置、网盘及存储介质
CN112379891B (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 350000 room 710, 7 / F, building a, jiuce building, Haixi high tech Industrial Park, Fuzhou high tech Zone, Fuzhou, Fujian

Applicant after: Moore element (Fujian) Technology Co.,Ltd.

Address before: 361000 1218-20, No. 99, Songyu South Second Road, Xiamen area, China (Fujian) pilot Free Trade Zone, Xiamen, Fujian

Applicant before: MOREWIS (XIAMEN) TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant