Когда я использую MiniTest :: Unit :: TestCase против MiniTest :: Spec? - PullRequest
17 голосов
/ 13 января 2012

Я изучаю TDD / BDD с помощью MiniTest.Я пытаюсь выяснить, какие части моего кода следует тестировать с помощью MiniTest :: Unit :: TestCase и какие части следует тестировать с использованием MiniTest :: Spec.

Я понимаю разницу между модульным тестированиеми интеграционное тестирование, что я не могу понять из примеров в Интернете, является ли TestCase и Spec одновременно модульными тестами или если TestCase используется для модульного теста и Spec используется для интеграционного тестирования?

Должен ли я хранить свои быстрые юнит-тесты в классах MiniTest :: Unit :: TestCase и более длительные интеграционные тесты, которые чаще всего описывают функции, в MiniTest :: Ожидаемые спецификации?Имеет ли это значение или вопрос личных предпочтений?

1 Ответ

4 голосов
/ 13 января 2012

Использую ли я MiniTest :: Unit утверждениями ) против MiniTest :: Spec , определяется тем, для кого я их пишу.

Для кода, который я пишу сам, без каких-либо требований «заказчика», я бы использовал MiniTest :: Unit. Тесты имеют смысл для меня, и чтение их кратко и точно.

Если я пишу код для клиента, у которого есть список требований, я бы использовал MiniTest :: Spec. Файлы спецификаций более читабельны для непрограммиста.


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

...