强制浏览器打开新选项卡

时间:2015-09-16 13:56:49

标签: javascript angularjs selenium automation protractor

我有一个执行上传的应用。我似乎无法弹出文件系统关闭。它不会搞砸测试,它会在后台继续运行,但我想要在屏幕的四分之一处观看测试的奇怪机会。所以我认为解决这个问题只是强制其他测试在新标签中完成。我不知道该怎么做。

这是我的上传代码:

var uploadPathLink = element(by.css('button.btn.btn-select'));
var path = require('path');
//the file to upload
fileToUpload,
//this is variable that inserts the path to find file to upload
absolutePath = path.resolve(__dirname, fileToUpload);
//inserts the path
uploadPathLink.sendKeys(absolutePath);

与此问题相关:Upload modal will not close after filepath is sent

1 个答案:

答案 0 :(得分:3)

要打开新标签,请传入您通常使用键盘执行的命令(CONTROL + T)。这是一个样本 -

element(by.tagName('html')).sendKeys(protractor.Key.chord(protractor.Key.CONTROL, "t")); //If you are using MAC then replace CONTROL with COMMAND
//element can be any element in your DOM

稍后您可以使用getWindowHandle()切换到新标签页。希望这会有所帮助。