我想并行运行测试。试图将shardTestFiles:true
与maxInstance:2
一起使用。但我需要的是能够为这些测试实例指定不同的URL,因为我的应用程序不是完全无状态的。
我尝试提供多种Chrome功能来实现这一目标,并通过名称进行识别。像这样:
multiCapabilities: [
{
'browserName': 'chrome',
name: 'browser1'
},
{
'browserName': 'chrome',
name: 'browser2'
}
]
但是量角器并没有对功能之间的测试进行分析。
感谢您的帮助。
答案 0 :(得分:0)
这是一个很好的问题,它绝对可能。使用browser.getProcessedConfig
在运行时获取当前浏览器的name
并相应地修改baseUrl
。请参阅browser.getProcessedConfig API doc
修改on-prepare
功能,如下所示
onPrepare: function() {
browser.getProcessedConfig().then(function(config){
switch(config.capabilities.name) {
case 'browser1':
browser.baseUrl = 'https://angularjs.org/'
break;
case 'browser2':
browser.baseUrl = 'http://www.protractortest.org/'
break;
default:
browser.baseUrl = 'https://builtwith.angularjs.org/'
break;
}
})
},