2013-02-13 2 views
0

Я новичок в рельсах, огурцах и rspec. Чтобы помочь узнать все три, я начал создавать реалистичное приложение, требующее входа в систему.порядок функций и определения шагов/спецификации в рубиновых приложениях? (рельсы)

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

Я начал с двух файлов функций. Тем не менее, я остановился на этом этапе, так как мне интересно, должна ли функция «входа» (хотя основной аспект приложения, поскольку они ничего не могут сделать без входа в систему) должна появиться после других активов и моделей, таких как вещи, которыми они управляют, когда они вошли в систему.

Итак, что на первом месте? Особенности для входа или функций для моделей, которыми они управляют?

пример особенность файлы:

Feature: User loads application 

    As a user 
    I want be able to load the application 
    So that I can manage my files 

    Scenario: Load application 
    Given I am not yet using the application 
    When I visit the application 
    Then I should see "Welcome to app" 

Войти особенность файла:

Feature: User logs in 

    As a user 
    I want be able to login 
    So that I can manage my private files 

    Scenario: Successful login 
    Given the user "Username" has an account 
    When they login 
    Then they should see "You have logged in successfully" 

Если я начал с особенностью, что они на самом деле использовать в качестве точки приложения?

ответ

1

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

Чтобы узнать, с чего начать, вам нужно задать вопросы заинтересованным сторонам. Вот несколько примеров:

  • Можем ли мы построить функцию A без аутентификации пользователя?
  • Нужно ли нам в настоящее время проверять подлинность пользователя?
  • Давайте рассмотрим, что у нас есть ресурсы для создания только одной функции, что было бы самым ценным сейчас: логин или функция A?

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

Теперь, чтобы прокомментировать ваши конкретные сценарии, стиль вашего использования довольно хорош.

У меня такое чувство (я мог бы быть wron) пользователь загружает приложение функция на самом деле не очень полезна. Как пользователь, вы заботитесь о сообщении «добро пожаловать в приложение»? Этот сценарий выглядит как предфункциональный тестовый тест, который вы хотели бы иметь в качестве разработчика, чтобы начать процесс разработки. Но, похоже, я не ошибаюсь, чтобы сказать что-нибудь полезное о поведении приложения.

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

+0

спасибо за ответ и комментарии. определенно помог. – djjjuk

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