如何处理量角器中的弹出窗口

时间:2019-11-18 08:53:45

标签: jasmine protractor

有时,当我的测试传感器达到警报级别时,应用程序立即将浏览器窗口与事件窗口重叠,我必须确认该事件窗口,然后我的测试失败。如何解决此问题,而又不关闭应用程序配置中的事件窗口?

2 个答案:

答案 0 :(得分:1)

在自动化中使用量角器识别或处理javascript弹出/警告。

使用接受方法在显示的弹出窗口上按确定/提交按钮。

browser.driver.switchTo().alert().accept();

关闭javascript弹出窗口:

browser.driver.switchTo().alert().dismiss();

获取javascript弹出窗口的文本:

browser.driver.switchTo().alert().getText();

将键发送到javascript弹出窗口:

browser.driver.switchTo().alert().sendKeys("Value");

处理量角器中的子浏览器弹出窗口: (此代码将切换到子浏览器弹出窗口)

  

子浏览器弹出具有许多Web元素。里面的元素   可以检查弹出窗口,并可以通过find元素标识元素   并且可以对这些元素执行任何操作。

browser.getAllWindowHandles().then(function(handles) {
 var count=handles.length;
 var newWindow = handles[count-1];
 browser.switchTo().window(newWindow);

});

答案 1 :(得分:0)

您需要检查元素是否存在以及是否存在以单击它,一些类似于以下代码:

 static async clickIfPresent(target: ElementFinder) {
    const isPresent = await target.isPresent();
    if (isPresent) {
        return this.click(target);
    }
    return;
}