我正在使用wdio运行测试。我将maxInstances减小为1,但是wdio日志记录表明它在每个spec文件之前创建了一个新会话。我该如何在单个浏览器会话中运行所有webdriver.io规格文件?谢谢!
wdio.conf.js是:
exports.config = {
specs: ['./test/specs/**/*.js'],
maxInstances: 1,
capabilities: [{
maxInstances: 1,
browserName: 'chrome',
}],
sync: true,
logLevel: 'verbose',
coloredLogs: true,
screenshotPath: './errorShots/',
baseUrl: process.env.ROOT_URL,
waitforTimeout: 10000,
connectionRetryTimeout: 90000,
connectionRetryCount: 3,
services: ['chromedriver'],
framework: 'mocha',
reporters: ['dot', 'spec', 'allure'],
mochaOpts: {
ui: 'bdd',
timeout: 99999999
},
}
答案 0 :(得分:0)
WebdriverIO将在不同的会话中运行每个测试文件。要在同一会话中全部运行它们,您需要将所有测试放在同一文件中。
如果发现自己需要在同一会话中运行所有测试,则也许应该重新测试...如果需要进行通用设置(例如记录日志),则可以使用WebdriverIO's "before" hook进入网站。
答案 1 :(得分:0)
尝试此替代方法。它实际上适用于webdriverio v4
在一个文件中列出所有规格。您可以利用正在使用的IDE的自动完成功能,例如
specs.js
require('./test/specs/test1');
require('./test/specs/test2');
// etc.
require('./test/specs/testN');
在您的wdio.conf.js文件中,将上述spec.js文件列出为唯一的规范,即
wdio.conf.js
exports.config = {
specs: ['./test/specs/specs.js'],
// etc.
}