使用不同的位置策略捕获dom元素的X-Path

时间:2013-12-18 11:51:47

标签: javascript selenium xpath

我尝试在Firebug源的帮助下捕获dom元素的x-path。 它已将相关函数明确定义为getElementXPath(),并且我可以通过传递Web元素来获取xpath。 但它返回单个x路径,x路径策略是不可预测的。 它可以是具有ID的绝对路径或相对路径。

说这是我们简单的HTML页面:

    <html>
     <body>
       <form>
         First name: <input id="fname" type="text" name="firstname"><br>
         Last name: <input id="lname" type="text" name="lastname">
       </form> 
     </body>
    </html>

我在这里搜索第一个文本框的xpath:

    //*[@id="fname"]

这是我们使用firebug得到的;以及使用我的使用getElementXPath() Firebug代码的脚本。

但在Selenium IDE中,有一个下拉框,其中包含单个Web元素的建议路径列表。

    id=fname ()          - id
    name=firstname       - name
    css=#fname           - css
    //input[@id='fname'] - xpath:attributes
    //input              - xpath:position

我浏览了它的代码,发现Google AJAXSLT是他们使用的默认库。它还说:使用“javascript-xpath”来获得更新,更快的引擎。 我检查了两个脚本,但到目前为止,我无法找到任何返回路径数组的直接函数。

在这些库中是否有像Firebug getElementXPath()这样的简单独立函数?

1 个答案:

答案 0 :(得分:0)

如果我正确理解您想在firebug中尝试xpath,请尝试FirePath

示例:enter image description here