1

我正在使用 selenium 2.33 java 为网站编写自动化脚本。

我正在调用 Selenium.isElementPresent() 函数来检查页面中是否存在元素,但有时该函数等待很长时间然后抛出“等待操作完成超时”异常。我不希望函数等待,因为在我的代码中,我已经确保页面在调用 isElementPresent() 之前已完全加载,我只希望函数返回 true 或 false。

设置 selenium.setTimeOute() 与此有关吗?,因为我一开始就在我的代码中设置了它。

并且使用 driver.findElements().size()!=0 是检查元素是否存在的更好方法吗?

我只需要立即知道一个元素是否存在,而不是等待它出现。

提前感谢您的回答......

4

1 回答 1

2

您需要将隐式等待设置为 0。

http://selenium.googlecode.com/git/docs/api/java/org/openqa/selenium/WebDriver.Timeouts.html

WebDriver driver = new FirefoxDriver();
driver.manage().timeouts().implicitlyWait(0, TimeUnit.SECONDS);

http://www.seleniumhq.org/docs/04_webdriver_advanced.jsp

于 2013-08-04T06:18:18.353 回答