如何解决如何在 codeceptjs 中的 codecept.conf.js 中使用 { grep: process.env.profile}
我想在我的 codecept.conf.js 中使用 { grep: process.env.profile}
然后例如Scenario(...).tag("dev")
(或 Feature(...) 相同)。
因此,如果我使用 --profile dev
运行测试,则会执行上述场景。它将被跳过 --profile prod
。
请帮助我,任何人,我在 codecept.conf.js 文件中完全使用 { grep: process.env.profile}
的地方。
const { setHeadlessWhen } = require('@codeceptjs/configure');
// turn on headless mode when running with HEADLESS=true environment variable
// export HEADLESS=true && npx codeceptjs run
setHeadlessWhen(process.env.HEADLESS);
exports.config = {
tests: './*_test.js',output: './output',helpers: {
Puppeteer: {
url: 'https://www.eme.com',show: true,}
},include: {
I: './steps_file.js'
},bootstrap: null,mocha: {},name: 'extramarks_puppeteer',plugins: {
pauSEOnFail: {},retryFailedStep: {
enabled: true
},tryTo: {
enabled: true
},screenshotOnFail: {
enabled: true
}
}
}
解决方法
为本地/默认执行配置配置您的默认 codecept.conf.js。
exports.config = {
tests: './*_test.js',output: './output',grep: 'dev',.....
在同一目录中为您想要的每个配置文件创建另一个 conf 文件。 (即 prod.conf.js)
在您的 prod.conf.js 文件中,您可以通过使用 lodash 来分配您想要的内容来扩展您的默认配置文件。您的 prod.conf.js 文件将如下所示:
const merge = require("lodash.merge");
const { config: baseConfig } = require("./codecept.conf.js");
const specificConfig = {
grep: '',helpers: {
WebDriver: {
protocol: "http",host: process.env.SELENIUM_STANDALONE_CHROME_PORT_4444_TCP_ADDR || "127.0.0.1",port: 4444,},plugins: {
wdio: {
enabled: false
}
}
};
exports.config = merge(baseConfig,specificConfig);
为了使用此特定配置运行 codeceptjs,您需要指定如下配置文件:
npx codeceptjs -c prod.conf.js
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。