如果两个链接中包含相同的文本,如何选择绝对链接?

时间:2017-05-29 13:07:04

标签: selenium xpath

我有两个链接

  1. 订婚戒指
  2. 上面的链接是下拉菜单下的复选框

    如何使用text()方法

    选择使用selenium xpath的Rings

    以下是我的尝试,但它正在选择"订婚戒指"

    //li//a[contains(text(),'Rings')]
    

    但它正在菜单中的Rings之前选择Engament Ring

    我的代码:

    //Select Sub-Menu item from collection dropdown     
    WebElement selectSub = driver.findElement(By.xpath("//div[@class='popover fade right in']//div[2]//li//a[contains(text(),'Rings')]"));
    

    enter image description here

2 个答案:

答案 0 :(得分:3)

这是选择Engagement Rings,因为您使用的是contains()方法

它将找到包含匹配文本的元素所以你的第一个复选框有" Rings"文本

只需将您的xpath更改为:

//li//a[text()='Rings']

OR

//li//a[normalize-space()='Rings']   

答案 1 :(得分:0)

请尝试下面的xpath我希望它能正常工作

//li//a[starts-with(text(),'Rings')]