我们有一个使用BDD功能文件的Protractor-CucumberJS框架,需要通过在功能文件中将相关场景标记为'@ sanity‘来创建一套健全性测试,并仅运行具有此标记的场景。
通过此设置,Protractor逐个启动每个功能文件的浏览器,检查它是否包含'@sanity‘标记,如果找不到标记,则关闭浏览器,依此类推。
这将占用大量时间,因为有近200个特征文件,因此我们希望浏览器仅在特征文件包含所需标签时启动,否则不启动。
有没有办法做到这一点。
配置文件-
exports.config = {
seleniumAddress: 'http://127.0.0.1:4444/wd/hub',
framework: 'custom',
frameworkPath: require.resolve('protractor-cucumber-framework'),
specs: [../features/*.feature]
cucumberOpts: {
require: [
'../step-definitions/**/*_Steps.js',
'generateJsonReport.js'
],
format: 'pretty',
tags: ['@sanity'],
},
multiCapabilities: [{
browserName: 'chrome',
shardTestFiles: true,
}
],
onPrepare: function () {
browser.driver.manage().window().setSize(1600, 800);
}
};发布于 2017-07-08 14:01:45
这是不可能的,因为您正在使用选项shardTestFiles:true,请参阅config。
如果您禁用它,或将其删除,它将首先搜索所有文件(不解析所有文件并打开浏览器)以查找您的特定标签,并仅运行具有该标签的功能文件。
发布于 2017-07-07 21:25:01
使用标签:‘@ Sanity’,在Conf文件中,这将只调用健全功能
https://stackoverflow.com/questions/44957131
复制相似问题