我想基于运行不同的功能文件,并希望在运行时(即通过命令行参数)进行决定。
每次我都取消注释文件,然后运行测试。 尝试使用黄瓜标签,但没有解决。
规格:[
// 'features/subscription/create.feature'
// './features/payment/create.feature'
],
有没有简单的方法可以做到这一点?
答案 0 :(得分:1)
据我所知有两种方法:
suites
,并将套件名称作为参数传递给WDIO测试。有关套件的详细说明:https://webdriver.io/docs/organizingsuites.html
注意:如果您使用npm test
开始测试,请使用npm test -- --suite login
选择一个套件。(文件中未提及)。
在您的wdio.conf.js
文件中,在exports.config
上方写以下行,并指定spec
值。
var features = process.env.FEATURE || './features/**/*.feature';
var featureArray = features.split(',');
exports.config = { .... spec: featureArray, ....} //skipped others
现在在触发测试时,使用如下命令:
FEATURE='./features/test.feature,./features/test1.feature' npm test
因此,当执行开始时,features
将收到字符串,我们将其转换为数组并将其作为参数传递给spec
。
希望这会有所帮助。