2016-02-14 3 views
1

У меня есть группа describe s, которая тестирует различные части API. В одном разделе все тесты зависят от одного теста. Я хочу, чтобы Mocha запускал первый тест, и если он терпит неудачу, пропустите все последующие тесты и запустите следующий набор тестов для следующего раздела API.Как перейти к следующему следующему описать ошибку в Mocha?

mocha --bail прекратил тестирование в целом после первого сбоя и не продолжит работу в следующем разделе.

mocha-steps - жизнеспособное решение, но я предпочитаю не использовать внешние библиотеки. Кроме того, он не делает skip шагов после сбоя, он вообще не печатает их. Как я уже сказал, это жизнеспособное решение, но не идеальное.

Что было бы лучшим способом реализовать это поведение в ванильном мокко?

ответ

1

Помещенный, что вы называете «первый тест» в before крюк внутри describe блока, который содержит все остальные тесты:

describe("bunch of related tests", function() { 
    before(function() { 
     // "first test" here 
    }); 

    it("test 1", function() { ... }); 
    it("test 2", function() { ... }); 
    // ... 
}); 

Это правильный путь в «ванильный мокко», чтобы установить зависимость между код в крюке before и каждый из тестов. Если ошибка before не удалась, Mocha сообщит об этом, и он пропустит все тесты в блоке describe. Если у вас есть другие тесты в другом месте, они все равно будут работать.

Смежные вопросы