Как вы справляетесь с добавлением чего-то вроде аутентификации Devise в истории BDD? - PullRequest
2 голосов
/ 01 декабря 2010

Если у вас есть набор сценариев BDD, таких как:

  • Пользователь должен иметь возможность зарегистрироваться
  • Пользователь должен иметь возможность войти в систему
  • Пользователь должен иметь возможностьдля сброса пароля

и т. д., как правило, вы пишете первый сценарий, затем пишете код для его прохождения и затем выполняете рефакторинг.

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

1 Ответ

2 голосов
/ 03 декабря 2010

С BDD вы должны сосредоточиться на ценности, которую вы предоставляете своим пользователям или заинтересованным сторонам. Вход в систему не очень полезен, поэтому я бы дал им что-нибудь для входа в систему для .

Тогда сценарии становятся легкими, либо:

Given Fred is logged in
When Fred buys a book...

или

Given Fred is on his home page
When Fred buys a book...

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

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

...