通常,量角器脚本在具有以下功能的新浏览器实例中执行
capabilities: {
'browserName': 'firefox'
}
是否有任何片段或方法来调整它?这样我们的脚本就可以通过量角器使用已经打开的浏览器。
通常,量角器脚本在具有以下功能的新浏览器实例中执行
capabilities: {
'browserName': 'firefox'
}
是否有任何片段或方法来调整它?这样我们的脚本就可以通过量角器使用已经打开的浏览器。
什么对我有用,对于angular2:
2919ed90-efac-48ee-83df-46f8e98ebce7
,您将在步骤#2 中需要它。添加/修改protractor.conf.js
以反映以下内容。
export.config.seleniumAddress:' http://localhost:4444/wd/hub ',exports.config.seleniumSessionId:'2919ed90-efac-48ee-83df-46f8e98ebce7',exports.config.directConnect:false
观察:
directConnect
为false很重要。seleniumSessionId
每次创建新会话时都需要更新(希望有办法告诉,使用当前正在运行的浏览器窗口seleniumSessionId
而不是每次都更新)使用browser.getCapabilities()获取调试器地址。使用调试器地址,我们可以与现有浏览器进行通信。在下面的链接中,我写了一篇关于这个的文章,看看这个。
在这一行上,您有一个关于如何在命令行上将其传递给 Protractor 的示例:https ://github.com/angular/protractor/commit/3f3805f9496fb130ae01b3e3278ee1ea7684d8e7#diff-b61b72dbab31e232fdb8466ebf733c4dR54
您可以在配置中使用相同的参数来传递当前会话 ID。您通常可以通过browser.getSessionId
示例 1 获取当前 sessionId:
var runProtractor = spawn('bin/protractor',
['spec/attachSession.js', '--seleniumSessionId=' + currentSessionId]);
示例 2 使用您的配置:
var checkOptions = {
hostname: 'localhost',
port: 4444,
seleniumSessionId: yourCurrentSessionId
....
}