0
我想在可配置次数的测试失败后停止测试套件。 我的测试套件有不同的文件,包含摩卡测试。在可配置次数的测试失败后停止Mocha测试套件的执行
我想从用户那里获得输入信息,以了解他们想要停止执行完整测试套件的测试用例失败次数。 因此,如果用户给出5作为输入,我的测试套件应该在第五个测试用例失败后停止。
任何人都可以帮助我,如果搞清楚如何做到这一点?
我想在可配置次数的测试失败后停止测试套件。 我的测试套件有不同的文件,包含摩卡测试。在可配置次数的测试失败后停止Mocha测试套件的执行
我想从用户那里获得输入信息,以了解他们想要停止执行完整测试套件的测试用例失败次数。 因此,如果用户给出5作为输入,我的测试套件应该在第五个测试用例失败后停止。
任何人都可以帮助我,如果搞清楚如何做到这一点?
下面是一个尝试:
// mocha-plugin-fail-after.js
const { Runner } = require('mocha');
const fail = Runner.prototype.fail;
const opts = require('minimist')(process.argv);
const failAfter = Number(opts['fail-after'] || 5);
let failures = 0;
Runner.prototype.fail = function() {
if (++failures > failAfter) {
console.log('\nToo many failures, exiting...');
process.exit(failures);
}
return fail.apply(this, arguments);
}
要使用:
mocha -r mocha-plugin-fail-after --fail-after=5 test/**/*.js
嗨@robertklep, 我的摩卡测试套件已经在使用2名记者。那么我应该为上述做一个单独的npm模块,然后将它作为第三方记者加入我的测试套件中吗? – vedantshete
@vedantshete这不是一个记者,只是一个插件(记者用'-R'加载,这个用'-r/- require'加载) – robertklep
Runner.prototype.fail函数没有被调用。 我正在使用上面的插件。插件被调用,但失败函数不是当我使用-r运行摩卡时。 因此,所有的测试都在运行,并且忽略了Runner.prototype.fail。 我无法理解应该进行哪些修改? – vedantshete