如果任何测试失败,我正在尝试配置 mocha 以重试整个套件。
我导航到一个 URL,然后填充一个表单并提交,然后用户被重定向,如果找到某个元素,则最后一次测试通过。
如果找不到该元素,我需要再次导航到表单,填写并提交,重新运行整个套件 N 次。
我已经在描述和它级别尝试过 this.retries() ,还有保释和重试标志,但 mocha 只重试失败的测试。
var count = 0
describe('Main suite', function () {
this.retries(5)
it('Some setup', () => {
console.log('1. Some setup');
});
it("bail issue", function() {
console.log('2. bail issue');
if (count < 4) {
count += 1
throw new Error("Must be retried")
}
})
});
describe('end', function () {
it('close', () => {
});
});
Run Code Online (Sandbox Code Playgroud)
基于 Mocha 文档,retries目的仅用于失败的测试
\n\n\n您可以选择重试失败的测试,最多一定次数。\n此功能旨在处理无法轻松模拟资源的端到端测试(功能\n测试/Selenium\xe2\x80\xa6)/被绊倒了。\xe2\x80\x99s\n 不建议使用此功能进行单元测试。
\n
参考:\n- https://mochajs.org/#retry-tests
\n