[发明专利]一种Xpath自动生成的方法在审
申请号: | 202211585396.1 | 申请日: | 2022-12-11 |
公开(公告)号: | CN115904996A | 公开(公告)日: | 2023-04-04 |
发明(设计)人: | 水晓艺;何鹏林;韩林志;王莉;管信莉;张耀华 | 申请(专利权)人: | 中电万维信息技术有限责任公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F40/146;G06F40/143;G06F9/455;G06F3/0481 |
代理公司: | 兰州嘉诺知识产权代理事务所(普通合伙) 62202 | 代理人: | 郭海 |
地址: | 730000 甘肃省兰州市城关*** | 国省代码: | 甘肃;62 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 xpath 自动 生成 方法 | ||
本发明属于数据测试技术领域,具体涉及一种XPath自动生成的方法。实现快速、准确地自动生成XPath,并且提高了web自动化测试的脚本编制效率,降低了web自动化测试的脚本编制及维护成本,同时降低了web动化测试的门槛。解决的问题首先是使得测试人员在做web自动化测试时,不再需要掌握Xpath的相关知识,消除了测试人员编写脚本对XPath知识的依赖性,使得初级测试人员就可进行web自动化测试,降低了web自动化测试的门槛;执行过程中报错或者页面元素路径发生变化,可以随时去重新生成xpath,这样降低了脚本的编写及维护成本。
技术领域
本发明属于数据测试技术领域,具体涉及一种XPath自动生成的方法。
背景技术
XPath即为XML路径语言(XML Path Language),基于XML的树状结构,提供在数据结构树中寻找节点,并对元素和属性进行遍历的能力。自动化测试中,元素定位是最重要的一环,定位的方法有多种,其中XPath定位起着重要作用。通常XPath的编制都是由测试人员进行手工编制,由于测试人员的经验、技术能力存在较大差异,加之测试需求的多样性及多变性,Web自动化测试脚本也要随之发生变化,因此手工编写的XPath脚本在实际执行自动化测试时往往存在较多挑战,导致效率低下、编制及维护脚本成本较高,甚至无法完成预期的自动化测试。
发明内容
为解决上述问题,本发明提供了一种XPath自动生成的算法,使得可以无需手工编写XPath,而自动生成多种XPath,选取其中最直观,执行效率最高的一条,以提高脚本编制效率,提升脚本执行效率。
一种XPath自动生成的方法,包括如下步骤
步骤1、获取页面的DOM元素并解析,DOM元素获取及解析由浏览器自动完成,按照标签的层次关系体现出标签的所属,形成一个树状结构,解析完成后对每个元素进行操作;
步骤2、鼠标悬浮元素,高亮显示,鼠标移走,则高亮取消,利用JS代码实现,采用JQuery的鼠标悬停事件onMouseOver和鼠标离开事件onMouseOut来控制页面样式,悬浮的时候设置高亮显示CSS样式,鼠标离开时设置高亮取消CSS样式;
步骤3、点击元素属性插桩,点击元素高亮显示,设置显示边框,通过Jquery获取当前点击元素,为当前元素设置一个唯一的属性及属性值,结合CSS技术为当前点击元素设置高亮显示及设置边框颜色样式;
步骤4、对有边框的元素,获取该元素的标签名称,包括input标签、a标签、button标签,通过Jquery技术获取当前元素的标签名称;
步骤5、对有边框的元素,获取该标签内的所有属性及属性值以及父节点、子节点、兄弟节点,具体属性包括class、href、title、text,通过Jquery技术的each循环获取标签内的所有属性及属性值,通过parent()、children()、prev()、next()来获取当前元素的父节点、子节点、上一个兄弟节点、下一个兄弟节点;
步骤6、根据属性及属性值拼接XPath;
步骤7、根据步骤6拼接的XPath在html文档中查找,获取查找到的个数X,如果查找值X等于1,则当前XPath就为当前元素的指定属性的一种XPath,生成当前XPath;如果查找值X大于1,则在当前XPath基础上序号依据数量增加,根据标有序号的XPath定位元素,检查定位到的元素是否有插桩属性,有则生成XPath,没有则继续为XPath序号加1,直至找到插桩属性元素生成XPath;同时带有插桩属性的即为所查找的元素,则当前XPath则为最终要生成的XPath;
步骤8、依次类推,通过被点击元素的多个属性值,生成多个XPath;
所述步骤3、4、5中边框为红色。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中电万维信息技术有限责任公司,未经中电万维信息技术有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211585396.1/2.html,转载请声明来源钻瓜专利网。