我正在使用selenium webdriver执行1000次测试。 对于每个测试用例,我需要点击网页上的“ID”元素。
我使用了WebElement x = driver.findElement(By.xpath("//*[@id='TEST']").click();
事件。
但不幸的是,对于几个测试场景(1000个中的2个或3个),它会抛出错误,说“无法找到元素”。对于剩下的测试用例,它正常执行。
我尝试使用Try&捕捉方法&刷新页面但功能正常,但性能太慢。
答案 0 :(得分:0)
您是否尝试过使用ExpectedConditions类(http://selenium.googlecode.com/svn/trunk/docs/api/java/org/openqa/selenium/support/ui/ExpectedConditions.html) 应该足够只需要在点击之前添加一些等待elementToBeClickable。
答案 1 :(得分:0)
“Try& Catch方法和刷新方法”是什么意思? Selenium模仿Web浏览器本身,因此它有时不稳定。 1000次测试需要花费大量时间,因此请确保您的计算机没有入睡,并且不要打扰它的测试过程,直到完成为止。 如果您最小化浏览器,某些测试将失败。
答案 2 :(得分:0)
我建议可能增加你的隐含等待。像
这样的东西driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);