微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 Selenium 和 Java 的线程“main”中的异常 java.util.NoSuchElementException 错误

如何解决使用 Selenium 和 Java 的线程“main”中的异常 java.util.NoSuchElementException 错误

以下是我用 Java 编写的代码,用于执行涉及切换到 Windows 句柄的测试。

Exception in thread "main" java.util.NoSuchElementException
    at java.base/java.util.LinkedHashMap$LinkedHashIterator.nextNode(LinkedHashMap.java:760)
    at java.base/java.util.LinkedHashMap$LinkedKeyIterator.next(LinkedHashMap.java:780)
    at com.Practice.Assignment4.main(Assignment4.java:22)

据我所知,我认为这段代码是正确的,但我仍然面临错误。我没有遇到这样的元素例外。

{{1}}

解决方法

这个错误信息...

Exception in thread "main" java.util.NoSuchElementException

...暗示 NoSuchElementException 被引发,因为使用 Locator Strategy 找不到这样的元素。

要将带有文本的元素标识为多个窗口,您可以使用以下任一 Locator Strategies

  • xpath

    driver.findElement(By.xpath("(//div[@id='content']//ul//li[33]"))
    

使用您可以使用的更规范的方法:

  • linkText

    driver.findElement(By.linkText("Multiple Windows"));
    
  • cssSelector

    driver.findElement(By.cssSelector("a[href='/windows']"));
    
  • xpath

    driver.findElement(By.xpath("//a[text()='Multiple Windows']"));
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。