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

java – 如何等待警报框在Selenium中执行操作?

我按下取消按钮比根据我的代码检查一些文本.在Chrome和Firefox中它工作正常但在IE中需要时间在警报框上执行操作,但代码移动到下一行.

所以我想要一些代码停止,直到操作在警告框中执行,然后进入下一步.我正在使用硒进行自动化测试.

请找一段代码

Alert al = driver.switchTo().alert();
al.accept();

wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(".//*[@id='content-body-full']/p[1]")));
assertEquals("Your cancellation request has been successfully executed.",driver.findElement(By.xpath(".//*[@id='content-body-full']/p[1]")).getText().toString());

解决方法

您希望等到警报出现后再切换到它,类似于第3行. Reference.

编辑:尝试:

new webdriverwait(driver,60)
        .ignoring(NoAlertPresentException.class)
        .until(ExpectedConditions.alertIsPresent());

Alert al = driver.switchTo().alert();
al.accept();

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

相关推荐