有没有办法在不同的机器上并行运行多个测试套件。
我能够在不同浏览器的同一台机器上进行并行执行。
尝试使用seleniumAdress:''/ wd / hub 但它不起作用。
答案 0 :(得分:2)
终于得到了答案: - )
步骤1:使用以下命令启动selenium standalone java -jar selenium-server-standalone-2.42.2.jar -port 5041
这里5041是一个端口号。
步骤2:在配置文件中添加以下代码行
multiCapabilities:[
{
browserName:'safari',
shardTestFiles:true,
seleniumAddress:'http://IP1:5041/wd/hub',
规格:'../ xyz.js',
maxInstances:1
},
{
browserName:'safari',
shardTestFiles:true,
seleniumAddress:'http://IP2:5041/wd/hub',
规格:'../ pqr.js',
maxInstances:1
}
],
注意:您需要在系统中启动selenium-standalone。
答案 1 :(得分:-3)
可能有更好的方法可以做到这一点,但目前我只是将它们作为并发的Grunt任务执行。
1)添加grunt并发插件
npm install grunt-concurrent --save-dev
2)在grunt.initConfig下为每个浏览器添加一个任务。我们可以将浏览器添加为arg以重用我们的配置文件。
protractor: {
options: {
keepAlive: true,
singleRun: false,
configFile: "test/protractor.conf.js"
},
run_chrome: {
options: {
args: {
browser: "chrome"
}
}
},
run_firefox: {
options: {
args: {
browser: "firefox"
}
}
}
},
3)将这些注册为任务;
grunt.registerTask('protractor-chrome', ['protractor:run_chrome']);
grunt.registerTask('protractor-firefox', ['protractor:run_firefox']);
4)在grunt.initConfig
下创建并发任务concurrent: {
protractor_test: ['protractor-chrome', 'protractor-firefox']
},
5)为并发
添加grunt任务grunt.registerTask('protractor-e2e', ['concurrent:protractor_test']);
执行该操作应该可以同时进行量角器测试。
希望这会有所帮助。 :)