Javascript 如何在量角器中按顺序运行多浏览器测试?
例如,我有5个TC,需要在Firefox和Chrome上运行所有5个测试用例。所以,一旦Chrome完成5个TCs的执行,我需要Firefox浏览器启动并按顺序执行相同的任务Javascript 如何在量角器中按顺序运行多浏览器测试?,javascript,protractor,Javascript,Protractor,例如,我有5个TC,需要在Firefox和Chrome上运行所有5个测试用例。所以,一旦Chrome完成5个TCs的执行,我需要Firefox浏览器启动并按顺序执行相同的任务 当我使用multiCapabilities时,它会同时启动Firefox和Chrome 您可以在量角器配置中使用maxSessionsvarconf.js // Maximum number of total browser sessions to run. Tests are queued in // seque
当我使用multiCapabilities时,它会同时启动Firefox和Chrome 您可以在量角器配置中使用
maxSessions
varconf.js
// Maximum number of total browser sessions to run. Tests are queued in
// sequence if number of browser sessions is limited by this parameter.
// Use a number less than 1 to denote unlimited. Default is unlimited.
maxSessions: -1
更多信息
示例conf.js
(firefox、safari、chrome、chrome设备模拟器):
更多示例和在真实设备中的测试这已在量角器版本5.4.2中测试并运行良好,根据Adolfo的回答我添加了maxSessions:1,因此它以顺序模式运行。换句话说,firefox规范首先执行,然后是chrome
exports.config = {
framework: 'jasmine',
directConnect: false,
multiCapabilities: [{
browserName: 'firefox',
'moz:firefoxOptions': {
args: ['--verbose'],
binary: 'C:/Program Files/Mozilla Firefox/firefox.exe'
//Need to start cmd via admin mode to avoid permission error
},
specs: ['src/com/sam/scriptjs/draganddrop.spec.js']
},
{
browserName : 'chrome',
chromeOptions: {
args: [ "--start-maximized" ]
},
specs: ['src/com/sam/scriptjs/iframes.spec.js']
}],
maxSessions: 1,//To run in sequential mode so first Firefox then chrome
//without max session it will open two windows at the same time for both browsers
seleniumAddress: 'http://localhost:4444/wd/hub'
}
你能不能更深入地了解一下为什么你希望按顺序运行?这可以通过相当繁琐的方式完成,这将涉及browser.forkNewDriverInstance()。看看这个方法是否有用。谢谢你。它帮了我很多。我能够达到我的要求,我的答案如下。
exports.config = {
framework: 'jasmine',
directConnect: false,
multiCapabilities: [{
browserName: 'firefox',
'moz:firefoxOptions': {
args: ['--verbose'],
binary: 'C:/Program Files/Mozilla Firefox/firefox.exe'
//Need to start cmd via admin mode to avoid permission error
},
specs: ['src/com/sam/scriptjs/draganddrop.spec.js']
},
{
browserName : 'chrome',
chromeOptions: {
args: [ "--start-maximized" ]
},
specs: ['src/com/sam/scriptjs/iframes.spec.js']
}],
maxSessions: 1,//To run in sequential mode so first Firefox then chrome
//without max session it will open two windows at the same time for both browsers
seleniumAddress: 'http://localhost:4444/wd/hub'
}