Среды тестирования BDD - RSpec и Cucumber - PullRequest
3 голосов
/ 26 октября 2009

Я изучал RSpec и огурец, и мне было интересно, что это добавляет к юнит-тестированию?

С одной стороны, вы можете сказать, что наличие «историй» или более удобочитаемых тестов является плюсом, но разве все эти псевдонимы имен функций не идут против использования юнит-тестов в качестве примеров использования кода?

1 Ответ

3 голосов
/ 26 октября 2009

Функциональные тесты, как и в случае с огурцом, сильно отличаются от модульных тестов. Модульный тест должен проверять единицу работы на уровне метода / класса. В идеале они не должны проверять взаимодействие между всей системой. Они должны быть быстрыми и изолированными (см. http://agileinaflash.blogspot.com/2009/02/first.html)

Вот где приходит Cucumber. Он обеспечивает фронт, где клиенты могут помочь определить, что они хотят, чтобы приложение делало, а затем вы пишете тесты, которые его реализуют. Это означает, что слой огурца, скорее всего, находится прямо на том же уровне, что и пользовательский интерфейс (и, следовательно, не позволяет вам размещать логику в вашем пользовательском интерфейсе в качестве бонуса)

В будущем, когда ваш клиент захочет изменить функциональность, вы можете открыть тест, изменить его ожидания (С клиентом) и затем кодировать изменения. Подключите все это к CI и вам хорошо идти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...