当一个测试用例失败时,Mocha会跳过套件中的其余测试

时间:2020-07-04 14:18:03

标签: unit-testing mocha functional-testing

TLDR;我尝试了describe选项,但无法解决我的问题。

我正在使用mocha测试来使用nemo和硒webdriver运行功能测试,其中套件中的一个测试用例取决于其先前的测试结果。我的要求是,一旦套件中的任何测试用例it失败,都将使套件describe('1001 User Profile Tests', function () { before(async function () { }); it('should login', async function () { }); it('edit profile details', async function () { throw new Error('profile details failed to load'); }); it('validate edited profile info', async function () { }); }); 中的所有测试失败。但是其他套件中的测试仍应继续执行。

例如我有两个测试套件

describe('1002 Admin Tests', function () {
    before(async function () {
    });

    it('login as admin', async function () {
    });

    it('approve user creation', async function () {
    });

    it('make user a moderator', async function () {
    });
});
mocha tests/*.*

当我使用mocha User Profile Tests ✓ should login 1) edit profile details ✓ validate edited profile info Admin Tests ✓ login as admin ✓ approve user creation ✓ make user a moderator 5 passing (5ms) 1 failing 运行测试时,它将运行所有测试,而其中一个测试失败。

--bail

当我使用mocha tests/*.* --bail选项时,所有测试(包括其他套件中的测试)也会被跳过。 例如 1001 User Profile Tests ✓ should login 1) edit profile details 1 passing (5ms) 1 failing

1001 User Profile Tests

我只想在一个测试失败的时候跳过套件1002 Admin Tests中的其余测试。测试是其他套件,例如{{1}}应该运行。

0 个答案:

没有答案