找不到正确的Xpath

时间:2019-07-05 05:19:10

标签: selenium selenium-webdriver xpath robotframework xpath-1.0

在Selenium机械手框架中运行脚本时Xpath无法识别

<div class="divRptData">
    <hr class="hrConnector" />
    <span style="float: left; cursor: pointer" class="tree-box tree-box-expand" onclick="javascript: toggleBranch(this, 'level2_ABC')"/>
    <span style="margin-left: 4px" class="ng-binding">text</span>
</div>

我已经在XPATH下尝试了上面的代码,当我手动找到它时,它就可以工作,但是在运行脚本时却无法识别。

//span[@onclick="javascript: toggleBranch(this, 'level2_ABC')"]

//div[3]/div/div/div/div[4]/div[1]/span[1]

能不能帮我解决这个问题。

2 个答案:

答案 0 :(得分:4)

我怀疑您正在遭受引号问题。试试:

//span[@onclick=\"javascript: toggleBranch(this, 'level2_ABC')\"]

您可以通过在控制台中键入以下内容来在浏览器中检查此XPath:

$x("//span[@onclick=\"javascript: toggleBranch(this, 'level2_ABC')\"]")

(以上内容适用于Chrome,我认为所有浏览器现在都支持语法)

答案 1 :(得分:0)

您可以使用以下_Xpath_s之一:

"//div[@class='divRptData']/hr[@class='hrConnector']//following::span[1]"

"//div[@class='divRptData']//span[@class='tree-box tree-box-expand' and contains(@onclick, 'level2_ABC')]"