java - 未处理的异常 : java. lang.InterruptedException

标签 java selenium selenium-webdriver

在 selenium 中进行写入自动化测试期间,我收到了使用“wait”的行的 Unhandled Exception: java.lang.InterruptedException

   public static void clickFirstAccountDetails() {
        getDriver().switchTo().frame(0);
        getDriver().wait(5000);
        getDriver().findElement(By.partialLinkText("Xyz")).click();
    }

未处理的异常:java.lang.InterruptedException

其他方法(如 switchTo、findElement)工作正常。

最佳答案

是的,java中没有显式处理所谓的检查异常是编译器错误,检查了InterruptedException。幸运的是,解决方案非常简单:

只需将异常添加到您的 throws 行中即可。事实上,对于任何测试代码,都可以随意在其末尾添加 throws Exception 。抛出异常的测试方法被视为失败的测试,这几乎总是正是您想要发生的情况,这样,异常中可用的每个细节都将最终出现在您的测试报告中,这也是您通常想要的。因此,将第一行更新为:

public static void clickFirstAccountDetails throws Exception {

这样就可以解决问题了。您可能想做:

public static void clickFirstAccountDetails throws InterruptedException {

相反,如果您希望在扩展测试代码并包含对引发其他已检查异常的代码的调用时继续出现编译器错误。

关于java - 未处理的异常 : java. lang.InterruptedException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58487188/

相关文章:

python - 如果 Selenium 中不存在元素,如何跳过

java - 为 HtmlUnitDriver Selenium 设置用户代理

python - MAC 上的 Selenium,消息 : 'chromedriver' executable may have wrong permissions

java - 如何在使用 chrome 驱动程序/firefox 驱动程序时更改 Webdriver 中的文件下载位置

java - 阐述 : Method overloading is a static/compile-time binding but not polymorphism. 将静态绑定(bind)与多态性相关联是否正确?

java ->>> 和 >> 运算符之间的区别

java - 如何使用mockito在Junit中获取org.apache.felix.scr.annotations.Reference?

java - java.util.logging.Logger.log() 是责任链模式吗?

java - 如何添加 PhantomJSDriver 命令行参数

ruby - 使用 Watir 查找当前打开的浏览器 (firefox) 窗口