Selenium不识别xpath

时间:2014-08-24 19:40:58

标签: java select selenium xpath selenium-webdriver

我正在使用Selenium WebDriver来获取下拉列表值。不幸的是我无法得到它,因为我的代码无法识别xpath。

这是我的代码:

  WebElement selector = driver.findElement(By.xpath("id('search')/x:fieldset/x:table[1]/x:tbody/x:tr[2]/x:td[1]/x:select"));
  Select s = new Select(selector);
  List<WebElement> options = s.getOptions();
  for (WebElement wb : options) {
     System.out.println(wb.getText());
  }

问题在于第1行(WebElement选择器)。在输出中我得到这样的东西:

  

线程“main”中的异常   org.openqa.selenium.InvalidSelectorException:xpath表达式   'ID(' 搜索 ')/ X:字段集/ X:表[1] / X:TBODY / X:TR [2] / X:TD [1] / X:选择'   无法评估

我甚至试图通过名字或类找到,但是selenium仍然没有找到这个列表。

如何解决问题?在此先感谢:)

2 个答案:

答案 0 :(得分:0)

Ganjira,这是无法编写xpath的方法。如果你发现难以识别物品。使用Selenium IDE&#39;选择&#39;按钮。

答案 1 :(得分:0)

如果您可以提供您尝试查找元素的html页面示例,那将非常有用。无论如何,尝试使用css选择器进行搜索,例如

WebElement selector = driver.findElement(By.css("#search > select"));