【发布时间】:2015-10-03 03:39:05
【问题描述】:
我想单击返回按钮,直到我到达我的应用程序中的特定页面(我的expectedElement 所在的位置)。这似乎不起作用...
因为找不到预期的元素而失败。
function navigateBack() {
var backButton = $('div.back');
var expectedElement = $('span.some-specific-class');
backButton.click().then(function () {
if (expectedElement.isDisplayed()) {
expectedElement.click();
} else {
navigateBack();
}
});
}
我做了一点修改,在isDisplayed() 上使用了一个promise。对缺少的元素调用isDisplayed() 时,Protractor 会抛出错误...
var expectedElement = $('span.some-specific-class');
expectedElement.isDisplayed().then(function(isDisplayed) {
if(isDisplayed)
console.log('isDisplayed');
});
所以,除非这是无效的语法,否则如果量角器会在调用 isPresent() / isDisplayed() 时抛出错误,你如何检查元素是否存在或显示?!?
【问题讨论】:
标签: javascript angularjs selenium-webdriver promise protractor