量角器 - 切换到窗口或iframe

时间:2015-10-06 20:53:42

标签: javascript testing protractor wait end-to-end

我正在尝试用'等待'替换'超时'或'睡眠'以使测试更快。我无法找到正确的方法来等待切换到没有标识符的窗口或iframe。

例如:

browser.sleep(5000);
browser.driver.switchTo().window(handles[0]).then(function() {
    // login.logout();
});

flow.timeout(5000);

browser.switchTo().frame(0);

1 个答案:

答案 0 :(得分:2)

我最近解决了与自定义Expected Condition 非常相似的内容,检查了指定数量的窗口句柄

function windowCount (count) {
    return function () {
        return browser.getAllWindowHandles().then(function (handles) {
            return handles.length === count;
        });
    };
}; 

用法:

browser.wait(windowCount(2), 5000);