2015-12-20 3 views
1

Я прочитал этот вид вопрос очень часто:Почему я не должен спрашивать «Как написать тест для этой функции с жасмином»?

Как я могу проверить следующие функции с жасмином?

Человек, который ищет этот ответ, искал примеры тестов жасмина и не нашел того, что может ему помочь.

Но нет хорошего ответа на этот вопрос. Вы можете сделать правильный ответ, разместив тест, который позволяет функции сбой или нет, но ответ не подходит. Зачем? Потому что это тотальный неправильный вопрос.

Так почему я не должен спрашивать «Как написать тест для этой функции с жасмином»?

ответ

1

Почему вы никогда не должны: Как проверить эту функцию с жасмином?

На жасмин github page первое предложение:

Жасмин Поведение Driven система тестирования для развития JavaScript.

Так что же такое поведение, управляемое развитием? Ответ на эту тему дает Wikipedia

Принципы BDD являются:

  • определяет тестовый набор для первого блока;
  • затем реализовать устройство;
  • , наконец, убедитесь, что реализация устройства делает тесты успешными.

Так что если я использую жасмин, я посвящаю себя процессу BDD. При этом, из первых рук, я думаю о том, что должна делать моя программа и как мне ее структурировать. Этот BDD настолько сильно отличается от функции сначала, а затем процесс модульного тестирования, что вам нужно думать совершенно иначе, как программировать.

В начале я также сделал ошибку, чтобы сначала подумать о моем классе и его методах. Но как только вы знаете, как структурировать вашу программу, чтобы она проходила тесты, вы больше не захотите возвращаться. Потому что результат тоже совершенно другой. Когда ваш код легко тестируется, у вас много мелких функций. Каждая функция выполняет очень простые вещи. Эти небольшие функции также очень легко тестируются. Вы будете удивлены, как часто достаточно expect(myFunction()).toEqual("my result"), чтобы проверить ваш код.

Так что вы никогда не должны спрашивать: как проверить заданную функцию с жасмином? Потому что это не намерение жасмина тестировать уже существующие функции. Когда вы пишете тест, сначала будут проверены все ваши функции.

Что-то разрешено - спросить, как проверить поведение ... с жасмином.

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