是否有办法使用IE开发者工具找到元素的XPath?
是否有办法使用IE开发者工具找到元素的XPath?
IEDriverServer.exe
- 应单独下载并放置在SwdPageRecorder.exe
旁边你是否正在寻找在IE中获取xpath的解决方案?
其他浏览器有很多插件,例如xpather适用于Chrome,xpather、xpath-checker和firebug适用于FireFox,它们可以在一秒钟内提供元素的xpath。但遗憾的是,没有可用的插件或工具可以在IE中实现这一点。对于大多数情况,您可以使用上述Firefox工具获取脚本中的元素xpath,并进行微调(如果需要)以使其在IE中运行。
但是,如果您正在测试仅适用于IE或该元素打开/播放的特定场景或页面的应用程序,则无法使用上述提到的任何工具查找XPATH。在这种情况下唯一可行的方法是为此目的编码的Bookmarklets。 Bookmarklets是JavaScript代码,您将其添加到IE中作为书签,稍后用于获取所需元素的XPATH。使用这些工具,您可以像使用xpather或任何其他Firefox附加组件一样轻松地获取XPATH。javascript:function getNode(node){var nodeExpr=node.tagName;if(!nodeExpr)return null;if(node.id!=''){nodeExpr+="[@id='"+node.id+"']";return "/"+nodeExpr;}var rank=1;var ps=node.previousSibling;while(ps){if(ps.tagName==node.tagName){rank++;}ps=ps.previousSibling;}if(rank>1){nodeExpr+='['+rank+']';}else{var ns=node.nextSibling;while(ns){if(ns.tagName==node.tagName){nodeExpr+='[1]';break;}ns=ns.nextSibling;}}return nodeExpr;}
9)点击确定。在弹出的警告框中点击“是”。
10)按照步骤3到5再添加一个收藏夹,将其命名为GetXPATH2(步骤4)。
11)重复步骤6和7,针对刚刚创建的GetXPATH2。
12)在GetXPATH2的URL字段中输入以下内容。
javascript:function o__o(){var currentNode=document.selection.createRange().parentElement();var path=[];while(currentNode){var pe=getNode(currentNode);if(pe){path.push(pe);if(pe.indexOf('@id')!=-1)break;}currentNode=currentNode.parentNode;}var xpath="/"+path.reverse().join('/');clipboardData.setData("Text", xpath);}o__o();
13) 重复第9步。
你已经完成了所有步骤!
现在要获取元素的XPATH,只需用鼠标选择该元素。这将涉及到在元素(链接、按钮、图像、复选框、文本等)开始之前单击左键,并将其拖动到元素结束为止。一旦你这样做了,首先从收藏夹菜单中选择喜欢的GetXPATH1,然后选择第二个喜欢的GetXPATH2。此时您将获得一个确认,点击允许访问按钮。现在打开记事本文件,右键并选择粘贴选项。这将给您所需元素的XPATH。
SCRIPT5007:无法获取未定义或空引用的属性'createRange'
。在另一个站点和元素上再次尝试,它可以正常工作,因此似乎取决于您正确选择它/您要执行操作的站点。可能只是我的设置问题? - ono2012