Подтвердить что ты не робот

Когда я использую MiniTest:: Unit:: TestCase против MiniTest:: Spec?

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

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

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

4b9b3361

Ответ 1

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

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

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


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