任何人都可以请一步如何处理量角器中的多个spec文件?我想要一个运行表,列出所有的spec文件名和一个列Excecute与所有这些。然后,我可以把'' Y'或者' N'在列中我想执行任何特定的spec文件。
我试着像这样在Json文件中加载它。
"[{"Spec Files":"spec1.spec.js","Execute":"Y"},
{"Spec Files":"spec2.js","Execute":"Y"},
{"Spec Files":"Spec3.js","Execute":"N"}]"
但是我无法加载这个JSON文件并在我调用我的spec文件的Config.js中循环。
答案 0 :(得分:1)
导入json应该像require
语句一样简单:
var j = require('path/to/your/file.json');
// Your json will look like :
[
{"Spec Files":"spec1.spec.js","Execute":"Y"},
{"Spec Files":"spec2.js","Execute":"Y"},
{"Spec Files":"Spec3.js","Execute":"N"}
]
// X will be the var you use as your spec files collection:
var x = [];
for (obj in j) {
if (j[obj].Execute === "Y") {
x.push(j[obj]["Spec Files"]);
}
}
// x will look like:
["spec1.spec.js", "spec2.js"]
您的conf.js文件应该与以下内容一致:
// Possible other imports
var json_file = require('./RunOrder.json');
var x = [];
for (obj in j) {
if (j[obj].Execute === "Y") {
x.push(j[obj]["Spec Files"]);
}
}
exports.config = {
framework: 'jasmine2',
seleniumAddress: 'http://localhost:4444/wd/hub',
capabilities: {
'browserName': 'chrome'
},
specs: x
// Possible other configuration settings
};
答案 1 :(得分:0)
1)您可以尝试使用exclude
配置参数忽略某些规范文件,请检查:https://github.com/angular/protractor/blob/master/docs/referenceConf.js#L115
2)您可以使用命令行参数覆盖要运行的spec文件:--specs relative/path/to/your_spec_file_or_pattern_*.js
这有帮助吗?