如何使用xpath和selenium ide单击链接

时间:2012-05-03 19:27:22

标签: xpath selenium

我对xpath和selenium都是新手,我需要能够根据天气点击链接硒,或者不能将跨度作为特定文本点击。示例代码是:

    <div>
    <span>Fri</span>
    <ul>
    <li>
    <a href=#></a>
    </li>
    </ul>
    </div>
<div>
    <span>Sat</span>
    <ul>
    <li>
    <a href=#></a>
    </li>
    </ul>
    </div>

我的xpath是//*[text()[contains(.,'Fri')]]找到正确的跨度,现在我想我可以使用//*[text()[contains(.,'Fri')]]../ul/li/a但是这不起作用。

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

Selenium IDE命令将是:

command: click
target : //span[contains(text(),'Fri')]/following::a

来自here

  

以下::树中上下文节点之后的所有节点,   排除任何后代,属性节点和命名空间节点。

请注意,您可能不会在xpath表达式的末尾写[1]以从所有匹配项中选择第一个节点,因为selenium IDE默认情况下会这样做。

当您使用IDE时,您也可以使用更容易阅读的css选择器:

command: click
target : css=span:contains('Fri')+ul a

至于你的初始xpath,你在../之前错过了一个斜杠:

//*[text()[contains(.,'Fri')]]/../ul/li/a