在 Java Selenium 中运行我的测试用例时经过长时间等待后抛出异常,其中代码中没有给出等待条件
我使用 TestNG 框架在 Java selenium 中设计了一个测试用例。有时,测试用例可能会由于环境问题或由于互联网缓慢或任何其他未知原因而未加载 Web 元素而失败。在这种情况下,应在短时间内抛出相应的异常。但在我的例子中,页面等待至少 5 分钟,然后抛出异常。我没有在代码中提供任何等待条件。我怎样才能克服这个需要立即抛出异常的情况。
Selenium 有一个名为
WebDriverWait
的对象。使用此对象,您可以为所有操作设置超时阈值 - 定位元素、将鼠标悬停在它们上方或单击它们。
Wait<WebDriver> wait = new WebDriverWait(driver,
Duration.ofSeconds(TimeOutThreshold));
driver.findElement(By.id("ElementID")).click();
只需为 TimeOutThreshold 设置合理的时间量(10 或 20 秒),就可以开始了。