Selenium WebDriver没有识别一个元素,尝试了很多选项吗?NoSuch元素异常即将到来?

时间:2015-10-17 12:08:52

标签: java css-selectors webdriver

票务操作员2 - 70002 - 15000038

<option class="LstOptSel_sun4" dojoattachpoint="optionNode" value="41" label="Ticket Operator 2 - 70002 - 15000038">Ticket Operator 2 - 70002 - 15000038</option>

2 个答案:

答案 0 :(得分:0)

那么你想做的事情很少。

  1. 确保元素不在iframe
  2. 如果那是我将css与正则表达式一起使用的唯一元素。例如[ label^='Ticket Operator 2']
  3. #2也可以使用基于文本的xpath完成。 //option[contains(text(),'Ticket Operator 2')]

答案 1 :(得分:0)

如果班级&#34; LstOptSel_sun4&#34;是唯一的,然后您可以使用两个不同的定位器来查找元素,并且您也说这是动态的,所以请确保隐式等待该特定元素。

选项1:按类名

driver.findElement(By.className(&#34; LstOptSel_sun4&#34));

选项2:按Xpath。

driver.findElement(By.xpath(&#34; // * [@ class =&#39; LstOptSel_sun4&#39;&#34;));

同样对于显式等待,您可以使用以下代码

WebDriverWait wait = new WebDriverWait(driver,100); wait.until(ExpectedConditions.presenceOfAllElementsLocatedBy(通过)); driver.findElement(通过);

希望这有助于解决您的问题。