测试等待ng-if元素看起来不起作用

时间:2016-03-26 14:26:29

标签: angularjs promise protractor

我正在使用量角器。我正在写这个测试:我正在等待一个元素出现。当它出现时我想点击它。所以我做到了这一点:

it("Test", () => {
            let k: p.ElementFinder = element(by.className("gift-back"));
            browser.wait(() => {
                let promise = k.isPresent().then((isPresent: boolean) => {
                    console.log(isPresent);
                    return isPresent;
                });
                return promise;
            });
            k.click();

问题在于,我正在等待出现的元素(带有类礼物的元素)是一个ng-if元素。所以这个元素一直不在DOM中,而且这个测试实际上并没有工作。非常感谢帮助或warkaround!

1 个答案:

答案 0 :(得分:1)

"presence" checks有一个内置的预期条件,请尝试:

var EC = protractor.ExpectedConditions;
var elm = element(by.className("gift-back"));
browser.wait(EC.presenceOf(elm), 5000);  // wait up to 5 seconds