我需要在多个浏览器上运行测试用例,同时使用 webdriverIO。尽管浏览了几篇关于 WDIO 的文章和文档,但我还是找不到可行的方法。
这是我的 wdio.conf.js。
exports.config = {
baseUrl: 'http://127.0.0.1:8100/',
path: '/wd/hub',
specs: [
'./e2e/**/*-wdio.e2e-spec.ts'
],
maxInstances: 10,
// capabilities: [
// {
// browserName: 'Chrome',
// },
// {
// browserName: 'Firefox',
// }
// ],
capabilities: {
myChromeBrowser: {
desiredCapabilities: {
browserName: 'Chrome',
}
},
myFirefoxBrowser: {
desiredCapabilities: {
browserName: 'Firefox',
}
}
},
sync: true,
waitforTimeout: 10000,
services: ['selenium-standalone'],
framework: 'jasmine',
jasmineNodeOpts: {
defaultTimeoutInterval: 50000,
expectationResultHandler: function(passed, assertion) { }
},
before: function () {
require('ts-node/register');
require('ts-node').register({
project: 'e2e'
});
},
}
这些是我在 package.json 中使用的 devDependencies:
"devDependencies": {
"ts-node": "^3.3.0",
"wdio-appium-service": "^0.2.3",
"wdio-firefox-profile-service": "^0.1.0",
"wdio-jasmine-framework": "^0.3.2",
"wdio-selenium-standalone-service": "0.0.9",
"wdio-spec-reporter": "^0.1.2",
"wdio-typescript-service": "0.0.3",
"webdriverio": "^4.9.8"
}
如您所见,我都尝试过"capabilities": []
,"capabilities": {}
但遵循官方文档,即使在那之后,也只能two instances of Chrome
运行。我还尝试按照安装文档Firefox's
安装插件/依赖项。
谁能指出,我错过了什么或配置错误?目前,谷歌浏览器启动了两个实例,测试用例在其上运行,而我希望测试用例分别在 chrome 和 firefox 中运行。