检查量角器中是否存在元素

use*_*351 6 javascript automated-tests angularjs protractor

我一直在尝试使用下面的代码片段来检查我正在寻找的元素是否存在,但是我得到的是"失败:使用定位器找不到元素:By(css selector,.icon-cancel)".我希望程序做的是执行b()

element(by.css('.icon-cancel')).isDisplayed().then(function(result) {
    if ( result ) {
        a();
    } else {
        b();
    }
});
Run Code Online (Sandbox Code Playgroud)

ale*_*cxe 12

isDisplayed()如果元素实际上不存在于DOM树中,则会失败.你需要这个isPresent()方法:

$('.icon-cancel').isPresent().then(function(result) {
    if ( result ) {
        a();
    } else {
        b();
    }
});
Run Code Online (Sandbox Code Playgroud)