2009-09-19 6 views

ответ

10

Как все отметили, у Огурца и Блада есть довольно разные цели. Вы можете думать о том, что Cucumber - это «обзор из 10 000 футов», - вы определяете широкую функциональность или конкретное взаимодействие с пользователем и убедитесь, что все работает сообща. Shoulda предназначен для модульного тестирования - вы выбираете конкретную модель и тщательно проверяете все придирчивые небольшие функциональные возможности для этой отдельной части.

Обычно вы хотели бы использовать эти структуры в совокупности. Например, большинство ваших тестов на высоком уровне могут быть написаны в Cucumber, но когда в вашей системе есть особенно сложный или непрозрачный бит кода, вы можете развернуть с помощью функции «Shoulda» или «RSpec», чтобы проверить данные.

3

У них совершенно разные цели. Shoulda - это модульное тестирование, построенное поверх Test :: Unit.

Огурец - это схема принятия/функционального тестирования, которая может использовать Test :: Unit/RSpec/Что бы ни делали утверждения.

Например, если Shoulda можно сравнить с RSpec.

1

Огурец предназначен для проведения приемочных испытаний. Shoulda - это модульная система тестирования.

1

Shoulda является расширением рамки Test::Unit, которая состоит из тестовых макросов, утверждений и помощников. Shoulda - более красивый способ писать модульные тесты.

Огурец - переиздание RSpec's «Story runner» - это инструмент для Behaviour-Driven Development. Он позволяет записывать исполняемые спецификации на бизнес-языке, пригодном для ведения бизнеса. Огурец - больше инструмент приемочного тестирования.

Огурцы и Shoulda имеют таким образом разные цели (даже если Shoulda может использоваться для BDD).

3

Я не вижу, чтобы кто-то еще упоминал, что вы на самом деле can use Shoulda как «испытательный двигатель» для огурца.

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