在nightwatch中发送COMMAND或CTRL键以关闭浏览器选项卡

时间:2018-05-22 16:21:26

标签: selenium testing automated-tests selenium-chromedriver nightwatch.js

我试图关闭Nightwatch中Chrome / IE浏览器上的标签 它接受除Windows中的CTRL或Mac中的COMMAND之外的所有键。

loginPage.sendKeys("@login", [client.Keys.CONTROL, "w" ]);

以下所有工作都按预期进行

 loginPage.sendKeys("@login", [client.Keys.SHIFT, "w" ]);
 loginPage.sendKeys("@login", [client.Keys.ENTER, "w"]);
 loginPage.sendKeys("@login", [client.Keys.SEMICOLON, "w"]);

我可以使用closeWindow功能关闭选项卡,但它不会调用浏览器关闭的beforeunload事件。我认为它杀死了Chrome / IE进程而不是关闭它。所以我正在寻找另一种方法来关闭夜视仪表。

1 个答案:

答案 0 :(得分:0)

我发现按CTRL + A可以正常工作

client.keys([client.Keys.CONTROL, "a"]);

但不是CTRL + J或CTRL + W

client.keys([client.Keys.CONTROL, "j"]);

另一种方法是

client.keys(client.Keys.CONTROL, () => {
         client.keys('a'));
     });

但是再次按CTRL + J或CTRL + W不会完成这项工作。