[发明专利]确定XPath路径的方法和装置有效
| 申请号: | 201910106725.1 | 申请日: | 2019-02-02 |
| 公开(公告)号: | CN109977267B | 公开(公告)日: | 2021-09-03 |
| 发明(设计)人: | 戴亦斌;金伟光;王晓磊 | 申请(专利权)人: | 北京云测信息技术有限公司 |
| 主分类号: | G06F16/81 | 分类号: | G06F16/81 |
| 代理公司: | 北京国昊天诚知识产权代理有限公司 11315 | 代理人: | 刘昕;南霆 |
| 地址: | 100016 北京*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 确定 xpath 路径 方法 装置 | ||
1.一种确定XPath路径的方法,其特征在于,包括:
确定待定位元素的兄弟元素;
仅基于所述兄弟元素构建第一XPath路径;
根据所述第一XPath路径定位所述待定位元素,得到第一定位结果;
根据所述第一定位结果,确定所述待定位元素对应的XPath路径;
其特征在于,所述根据所述第一定位结果,确定所述待定位元素对应的XPath路径,包括:
若所述第一定位结果为定位到唯一的元素,则确定所述唯一的元素为所述待定位元素,且确定所述待定位元素对应的XPath路径为所述第一XPath路径;
所述根据第一定位结果,确定所述待定位元素对应的XPath路径,包括:
若所述第一定位结果为定位到多个元素,则获取所述待定位元素的父级元素;
基于所述父级元素构建第二XPath路径;
根据所述第一XPath路径和所述第二XPath路径定位所述待定位元素,得到第二定位结果;
根据所述第二定位结果,确定所述待定位元素对应的XPath路径;
所述根据所述第二定位结果,确定所述待定位元素对应的XPath路径,包括:
若根据所述第二定位结果为定位到唯一的元素,则确定所述唯一的元素为所述待定位元素,且确定所述待定位元素对应的XPath路径为所述第一XPath路径与所述第二XPath路径的组合路径;
所述根据所述第二定位结果,确定所述待定位元素对应的XPath路径,包括:
若所述第二定位结果为定位到多个元素,则获取所述父级元素的父级元素;
基于所述父级元素的父级元素构建第三XPath路径;
根据所述第一XPath路径、第二XPath路径和第三XPath路径定位所述待定位元素,得到第三定位结果;
根据所述第三定位结果,确定所述待定位元素对应的XPath路径;
当待定位元素为待测试应用中的控件时,有些控件的文本属性会随着刷新或者版本的更新发生变化,那么XPath路径为不带文本属性的XPath路径,对文本属性的变化忽略不计,有些控件的文本属性固定,那么XPath路径为带文本属性的XPath路径;
所述基于所述兄弟元素构建第一XPath路径,包括:
基于所述兄弟元素的标识属性信息构建第一XPath路径,其中,所述标识属性信息包括元素类型、元素位置、元素识别标识以及元素的文本text。
2.如权利要求1所述的方法,其特征在于,在确定待定位的兄弟元素之前,所述方法还包括:
获取并保存所述待测试应用中的全部元素,所述全部元素包括所述待定位元素和所述兄弟元素。
3.一种确定XPath路径的装置,其特征在于,包括:
确定模块,用于确定待定位元素的兄弟元素;
构建模块,用于仅基于所述兄弟元素构建第一XPath路径;
定位模块,用于根据所述第一XPath路径定位所述待定位元素,得到第一定位结果;
确定模块,还用于根据所述第一定位结果,确定所述待定位元素对应的XPath路径;
其中,所述定位模块,用于:
若所述第一定位结果为定位到唯一的元素,则确定所述唯一的元素为所述待定位元素,且确定所述待定位元素对应的XPath路径为所述第一XPath路径;
所述定位模块,包括:
第一获取子模块,用于若所述第一定位结果为定位到多个元素,则获取所述待定位元素的父级元素;
第一构建子模块,用于基于所述父级元素构建第二XPath路径;
第一定位子模块,用于根据所述第一XPath路径和所述第二XPath路径定位所述待定位元素,得到第二定位结果;
第一确定子模块,根据所述第二定位结果,确定所述待定位元素对应的XPath路径;
所述第一定位子模块,用于:
若根据所述第二定位结果为定位到唯一的元素,则确定所述唯一的元素为所述待定位元素,且确定所述待定位元素对应的XPath路径为所述第一XPath路径与所述第二XPath路径的组合路径;
所述第一定位子模块,包括:
第二获取子模块,还用于若所述第二定位结果为定位到多个元素,则获取所述父级元素的父级元素;
第二构建子模块,还用于基于所述父级元素的父级元素构建第三XPath路径;
第二定位子模块,用于根据所述第一XPath路径、第二XPath路径和第三XPath路径定位所述待定位元素,得到第三定位结果;
第二确定子模块,还用于根据所述第三定位结果,确定所述待定位元素对应的XPath路径;
当待定位元素为待测试应用中的控件时,有些控件的文本属性会随着刷新或者版本的更新发生变化,那么XPath路径为不带文本属性的XPath路径,对文本属性的变化忽略不计,有些控件的文本属性固定,那么XPath路径为带文本属性的XPath路径;
所述基于所述兄弟元素构建第一XPath路径,包括:
基于所述兄弟元素的标识属性信息构建第一XPath路径,其中,所述标识属性信息包括元素类型、元素位置、元素识别标识以及元素的文本text。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京云测信息技术有限公司,未经北京云测信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910106725.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种小说推荐方法及设备
- 下一篇:一种录像信息检索方法





