我正在运行 Protractor 来测试angularjs应用程序。一切正常,但是当生成浏览器窗口时,它是在后台,因此我必须使用cmd-tab来找到它,而错过了开始时发生的事情。

有什么办法可以以编程方式将浏览器窗口置于前台?

最佳答案

您可以触发警报并立即接受它。将以下内容放入onPrepare():

onPrepare: function () {
    return browser.executeScript("alert('Test');").then(function () {
        return browser.switchTo().alert().accept();
    });
},

或者,就像@LeoGalucci指出的那样,截取屏幕截图:
onPrepare: function () {
    return browser.takeScreenshot();
},

请注意,return在这里很重要-在这种情况下,除非Protractor返回的 promise 得到解决,否则onPrepare()不会开始执行测试。

两种选择都对我有用。

10-01 01:25