【发布时间】:2016-02-29 20:16:33
【问题描述】:
我是 Selenium 网络驱动器的新手。尝试做一些页面自动化,并使用driver.wait 函数先等待选择器呈现,然后再做一些操作。
想知道如果元素在 x 秒后没有显示,Selenium 是否有办法传入超时处理程序来管理超时。
这是我的代码:
driver.wait(function () {
return driver.isElementPresent(webdriver.By.css('input[id="searchMap"]'));
}, 10000);
所以 10 秒后如果 input[id="searchMap"] 没有出现,Selenium 脚本将结束并抛出错误。
我正在寻找这样的东西:
driver.wait(function () {
return driver.isElementPresent(webdriver.By.css('input[id="searchMap"]'));
}, 10000, function fail(){
console.log("Time is up!");
});
【问题讨论】:
-
你知道 ExpectedConditions 类吗?
-
在 javascript api 文档中没有看到
-
没错,您使用的 api 没有移植 ExpectedConditions 类,因此您无权访问它。 Nightwatch.js 有我见过的最接近的东西:nightwatchjs.org/api
标签: selenium selenium-webdriver timeout