我有一个运行一些selenium测试的java程序。
但我在这里有一个问题,在运行的中途,网络可能会或可能不会抛出带有xpath的网络消息:
//*[@id='toast-container']
如果弹出此xpath,我的程序将停止,因为selenium无法访问其他xPath 我希望程序继续运行,但是当我找到这个toast-container xpath时,它应该点击该xpath并从它离开的地方继续。 运行硒测试时,此xPath可能随时出现蠕变
有没有办法动态找到它?提前谢谢。
答案 0 :(得分:0)
使用@Before批注指定一个方法,在每个@Test之前检查弹出窗口是否存在,如果存在则处理它。类似的东西:
@Before
public void checkPopUp() {
if (driver.findElements(By.Xpath("//*[@id='toast-container']")).size > 0) {
//Code to close pop-up
}
}