F. *_*kes 8 javascript selenium node.js
我想在执行此行之前检查元素是否存在:
driver.findElement(webdriver.By.id('test'));
如果test文档中不存在id ,即使在try-block中,也会抛出错误"no such element" .我找到了Java的答案,您可以在其中检查大小是否为0,但在node-js中,这会在我检查大小之前抛出错误.
throw error;
^
NoSuchElementError: no such element
Zug*_*alt 24
您可以利用可选的错误处理程序参数then().
driver.findElement(webdriver.By.id('test')).then(function(webElement) {
console.log('Element exists');
}, function(err) {
if (err.state && err.state === 'no such element') {
console.log('Element not found');
} else {
webdriver.promise.rejected(err);
}
});
Run Code Online (Sandbox Code Playgroud)
我找不到它的文件中明确规定,但在确定这个从函数定义webdriver/promise.js中selenium-webdriver模块来源:
/**
* Registers a callback on this Deferred.
* @param {Function=} opt_callback The callback.
* @param {Function=} opt_errback The errback.
* @return {!webdriver.promise.Promise} A new promise representing the result
* of the callback.
* @see webdriver.promise.Promise#then
*/
function then(opt_callback, opt_errback) {
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21398 次 |
| 最近记录: |