UI自动化测试的元素识别方法、装置、设备及存储介质制造方法及图纸

技术编号:23764059 阅读:33 留言:0更新日期:2020-04-11 18:54
本发明专利技术提供一种UI自动化测试的元素识别方法、装置、设备及存储介质,涉及用户界面测试技术领域。本发明专利技术实施例通过基于目标元素的id和/或name,生成目标元素的Xpath,根据目标元素的Xpath,识别目标元素,可以在UI自动化测试过程中实现对目标元素的识别。若根据目标元素的Xpath未识别到目标元素,则采用上下文边界匹配算法识别目标元素,可以有效提高UI自动化测试过程中的元素识别成功率。

Element identification method, device, equipment and storage medium of UI automatic test

【技术实现步骤摘要】
UI自动化测试的元素识别方法、装置、设备及存储介质
本专利技术涉及用户界面测试
,具体而言,涉及一种UI自动化测试的元素识别方法、装置、设备及存储介质。
技术介绍
前端开发的用户界面(UserInterface,UI)在交付之前需要进行测试,例如,可以通过UI自动化测试来核实用户与软件的交互,确保UI可以向用户提供适当的访问和浏览测试对象功能的操作。UI自动化测试中,需要准确定位识别出前端UI的元素。目前,对前端UI的元素进行定位识别的方法一般为:基于可扩展标记语言路径语言(ExtensibleMarkupLanguagePathLanguage,Xpath)进行目标元素的定位,识别出目标元素进行抓取。Xpath一般采用随机身份标识(identitydocument,id)和名称(name)生成,而在金融领域中,大多WebUI在开发过程中都不会设置name,id是随机的,XPath一般是根据id生成的,采用随机的id生成Xpath对元素进行定位会导致每次回放测试脚本时,Xpath都会发生变化而出错,元素识别成功率低下。
技术实现思路
本专利技术提供一种UI自动化测试的元素识别方法、装置、设备及存储介质,可以有效提高UI自动化测试过程中的元素识别成功率。第一方面,本专利技术实施例提供一种UI自动化测试的元素识别方法,该方法包括:基于目标元素的身份标识id和/或名称name,生成目标元素的可扩展标记语言路径语言Xpath;根据目标元素的Xpath,识别目标元素;若根据目标元素的Xpath未识别到目标元素,则采用上下文边界匹配算法识别目标元素。可选地,所述方法还包括:若采用上下文边界匹配算法未识别到目标元素,则采用图像识别算法识别目标元素。可选地,上述采用上下文边界匹配算法识别目标元素,包括:确定目标元素所在的目标框中的第一个元素的文本为识别基准;根据目标元素相对于识别基准的距离,识别目标元素。可选地,上述确定目标元素所在的目标框中的第一个元素的文本为识别基准之前,所述方法还包括:根据目标框的序号,生成目标框的Xpath。相应地,上述根据目标元素相对于识别基准的距离,识别目标元素,包括:根据目标元素相对于识别基准的距离、以及目标框的Xpath,识别目标元素。可选地,上述基于目标元素的id和/或name,生成目标元素的Xpath之前,所述方法还包括:基于目标元素所在的目标框所属的内联框架的id和/或name,生成内联框架的Xpath;根据内联框架的Xpath,切换至对应的内联框架;若切换成功,则基于目标元素的id和/或name,生成目标元素的Xpath。可选地,所述方法还包括:若切换失败,则基于内联框架的稀疏表达src字符串,生成内联框架的Xpath。第二方面,本专利技术实施例提供一种UI自动化测试的元素识别装置,包括:第一生成模块,用于基于目标元素的身份标识id和/或名称name,生成目标元素的可扩展标记语言路径语言Xpath;第一识别模块,用于根据目标元素的Xpath,识别目标元素;第二识别模块,用于若第一识别模块根据目标元素的Xpath未识别到目标元素,则采用上下文边界匹配算法识别目标元素。可选地,所述装置还包括:第三识别模块,用于若第二识别模块采用上下文边界匹配算法未识别到目标元素,则采用图像识别算法识别目标元素。可选地,第二识别模块,具体用于确定目标元素所在的目标框中的第一个元素的文本为识别基准;根据目标元素相对于识别基准的距离,识别目标元素。可选地,所述装置还包括:第二生成模块,用于在第二识别模块确定目标元素所在的目标框中的第一个元素的文本为识别基准之前,根据目标框的序号,生成目标框的Xpath。相应地,第二识别模块具体用于根据目标元素相对于识别基准的距离、以及目标框的Xpath,识别目标元素。可选地,所述装置还包括:第三生成模块和切换模块;在第一生成模块基于目标元素的id和/或name,生成目标元素的Xpath之前,第三生成模块用于基于目标元素所在的目标框所属的内联框架的id和/或name,生成内联框架的Xpath;切换模块用于根据内联框架的Xpath,切换至对应的内联框架;相应地,第一生成模块,具体用于若切换模块切换成功,则基于目标元素的id和/或name,生成目标元素的Xpath。可选地,所述装置还包括:第四生成模块,用于若切换模块切换失败,则基于内联框架的稀疏表达src字符串,生成内联框架的Xpath。第三方面,本专利技术实施例提供一种UI自动化测试的元素识别设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当UI自动化测试的元素识别设备运行时,所述处理器与所述存储介质之间通过所述总线通信,所述处理器执行所述机器可读指令,以执行如第一方面所述的UI自动化测试的元素识别方法。第四方面,本专利技术实施例还提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如第一方面所述的UI自动化测试的元素识别方法。本专利技术的有益效果是:本专利技术实施例提供的UI自动化测试的元素识别方法、装置、设备及存储介质中,通过基于目标元素的id和/或name,生成目标元素的Xpath,根据目标元素的Xpath,识别目标元素,可以在UI自动化测试过程中实现对目标元素的识别。若根据目标元素的Xpath未识别到目标元素,则采用上下文边界匹配算法识别目标元素,可以有效提高UI自动化测试过程中的元素识别成功率。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1示出了本专利技术实施例提供的UI自动化测试的元素识别方法的流程示意图;图2示出了本专利技术实施例提供的上下文边界匹配算法的流程示意图;图3示出了本专利技术实施例提供的UI自动化测试的元素识别方法的另一流程示意图;图4示出了本专利技术实施例提供的UI自动化测试的元素识别方法的又一流程示意图;图5示出了本专利技术实施例提供的UI自动化测试的元素识别方法的又一流程示意图;图6示出了本专利技术实施例提供的UI自动化测试的元素识别方法的又一流程示意图;图7示出了本专利技术实施例提供的UI自动化测试的元素识别装置的结构示意图;图8示出了本专利技术实施例提供的UI自动化测试的元素识别装置的另一结构示意图;图9示出了本专利技术实施例提供的UI自动化测试的元素识别装置的又一结构示意图;图10示出了本专利技术实施例提供的UI自动化测试的元素识别装置的又一结构示意图;图11示出了本专利技术实施例提供的UI自动化测试的元素识别装置的又一结构示意本文档来自技高网...

【技术保护点】
1.一种用户界面UI自动化测试的元素识别方法,其特征在于,所述方法包括:/n基于目标元素的身份标识id和/或名称name,生成所述目标元素的可扩展标记语言路径语言Xpath;/n根据所述目标元素的Xpath,识别所述目标元素;/n若根据所述目标元素的Xpath未识别到所述目标元素,则采用上下文边界匹配算法识别所述目标元素。/n

【技术特征摘要】
1.一种用户界面UI自动化测试的元素识别方法,其特征在于,所述方法包括:
基于目标元素的身份标识id和/或名称name,生成所述目标元素的可扩展标记语言路径语言Xpath;
根据所述目标元素的Xpath,识别所述目标元素;
若根据所述目标元素的Xpath未识别到所述目标元素,则采用上下文边界匹配算法识别所述目标元素。


2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若采用上下文边界匹配算法未识别到所述目标元素,则采用图像识别算法识别所述目标元素。


3.根据权利要求1所述的方法,其特征在于,所述采用上下文边界匹配算法识别所述目标元素,包括:
确定所述目标元素所在的目标框中的第一个元素的文本为识别基准;
根据所述目标元素相对于所述识别基准的距离,识别所述目标元素。


4.根据权利要求3所述的方法,其特征在于,所述确定所述目标元素所在的目标框中的第一个元素的文本为识别基准之前,所述方法还包括:
根据所述目标框的序号,生成所述目标框的Xpath;
相应地,所述根据所述目标元素相对于所述识别基准的距离,识别所述目标元素,包括:
根据所述目标元素相对于所述识别基准的距离、以及所述目标框的Xpath,识别所述目标元素。


5.根据权利要求1所述的方法,其特征在于,所述基于目标元素的id和/或name,生成所述目标元素的Xpath之前,所述方法还包括:
基于所述目标元素所在的目标框所属的内联框架的id和/或name,生成所述内联框架的Xpath...

【专利技术属性】
技术研发人员:庞振海张同虎
申请(专利权)人:中国建设银行股份有限公司建信金融科技有限责任公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1