解决Protactor中的承诺

时间:2018-03-28 12:26:36

标签: promise jasmine protractor

我确实遇到以下代码问题:

\w

这里在A点,如果元素存在,程序运行顺利。但是如果元素不存在,则抛出错误。在B点,我试图处理承诺,如果它被拒绝。如果元素不存在,请帮助我。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

将点击移动到if块,仅当元素存在时,然后执行单击

var promise = element(by.id("closeNotification")).isPresent(); // point A

promise.then((present) => {
    if(present) { // only click when present == true
        element(by.id("closeNotification")).click();
    }
    browser.sleep(3000);
}, (errorMessage) => {                // Point B
    browser.refresh();
});