当前,我们有一个基于Mocha + mocha.parallel的API测试框架。 在我们决定使用--grep功能来改善烟雾之前,它的工作非常出色。
我们以这种方式编写的测试:
import parallel = require("mocha.parallel");
parallel("Paralell 1", function() {
[
{descript: "Suite1 test# "},
{descript: "Suite1 test# @TAG"},
{descript: "Suite1 test# "},
{descript: "Suite1 test# "},
{descript: "Suite1 test# @TAG "},
].forEach((testData, index) => {
it(`${testData.descript} ${index} testing of feature`, function(done) {
console.log(`I'm in test ${testData.descript} ${index} body`);
setTimeout(done, 2000);
});
});
});
parallel("Parallel 2", function() {
[
{descript: "Suite2 test# "},
{descript: "Suite2 test# "},
{descript: "Suite2 test# "},
{descript: "Suite2 test# "},
{descript: "Suite2 test# "},
{descript: "Suite2 test# "},
].forEach((testData, index) => {
it(`${testData.descript} ${index} testing of feature`, function(done) {
console.log(`I'm in test ${testData.descript} ${index} body`);
setTimeout(done, 2000);
});
});
});
运行测试时,我们发现了2个问题
TypeError:无法读取null的属性“ then”
如果我们将Parallels像这样并行放置,我们可以模拟这样的问题:
parallel("Paralell 3", function() {
parallel("Paralell 1", function() {
.....
});
parallel("Parallel 2", function() {
.....
});
});
问题: