如何在量角器中等待,直到元素启用

pra*_*kum 9 javascript testing selenium selenium-webdriver protractor

试图单击按钮时,量角器失败.最初,该按钮将处于禁用状态(某些时候它将被启用),并且量角器认为按钮已准备好并单击按钮并失败.

所以我希望量角器脚本等到按钮启用.我在下面尝试过,但它没有用.有人可以发布完整的代码来等待元素启用吗?

expect(browser.wait(function(){return browser.driver.isElementPresent(by.id('paynow-info-btn'))}, 10000));
Run Code Online (Sandbox Code Playgroud)

ale*_*cxe 22

有一个非常合适的预期条件 - elementToBeClickable它会等待一个元素既可见又启用:

var elm = element(by.id('paynow-info-btn'));
var EC = protractor.ExpectedConditions;

browser.wait(EC.elementToBeClickable(elm), 5000);
elm.click();
Run Code Online (Sandbox Code Playgroud)