问题描述
以下是我用 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']"));