我为我的应用程序设置了CodeceptJS框架,并且测试运行顺利。 但是现在我希望他们使用无头铬。尝试了官方网站上提到的一些内容,但对我不起作用。
我尝试使用npx codeceptjs run --verbose
运行测试。
我的codecept.conf.js文件如下:
exports.config = {
tests: './tests/features/**/*_test.js',
output: './tests/output',
helpers: {
WebDriver: {
smartwait: 10000,
waitForTimeout: 10000,
url: 'https://affinity.sourcefuse.com',
browser: 'chrome',
windowSize: 'maximize',
chromeOptions: {
args: [ "--headless", "--disable-gpu", "--window-size=800,600"]
}
}
},
include: {
I: './steps_file.js',
createDatasetPage: 'tests/pages/createDataset.js',
},
bootstrap: null,
mocha: {},
name: 'dashboard',
plugins: {
"allure": {
"enabled": true
},
wdio: {
enabled: true,
services: ['selenium-standalone']
}
}
}
实际:Chrome已启动且测试开始运行。
预期:我希望它可以在无头的chrome上运行。
答案 0 :(得分:1)
chromeOptions
需要包装在desiredCapabilities
中,您的配置应如下所示:
exports.config = {
tests: './tests/features/**/*_test.js',
output: './tests/output',
helpers: {
WebDriver: {
smartwait: 10000,
waitForTimeout: 10000,
url: 'https://affinity.sourcefuse.com',
browser: 'chrome',
windowSize: 'maximize',
desiredCapabilities: {
chromeOptions: {
args: ["--headless", "--disable-gpu", "--no-sandbox"]
}
}
}
},
include: {
I: './steps_file.js',
createDatasetPage: 'tests/pages/createDataset.js',
},
bootstrap: null,
mocha: {},
name: 'dashboard',
plugins: {
"allure": {
"enabled": true
},
wdio: {
enabled: true,
services: ['selenium-standalone']
}
}
}
我已经从windowSize
中删除了args
,因为它已经用windowSize
进行了设置,而是添加了no-sandbox
,这是自动化测试的建议。