Каков наилучший способ организации функциональных и модульных тестов Rails? - PullRequest
0 голосов
/ 03 ноября 2011

Я организовывал свои тесты по иерархии контроллер / действие / сценарий или модель / метод / сценарий. Это выглядит естественно и понятно. Но я обнаружил, что мне пришлось периодически настраивать тестовые данные для разных действий и методов одного и того же сценария. Хотя я могу уменьшить избыточность кода путем повторного использования кода. Но я думаю, что для установки этих тестовых данных снова и снова уходит много времени, особенно для машины. Кто-нибудь организует эти тесты по сценариям? Каков наилучший способ организации тестовых случаев?

1 Ответ

2 голосов
/ 22 ноября 2011

Если этот вопрос касается повторения при генерировании тестовых данных, вам, вероятно, следует обратить внимание на следующие гемы, которые помогут вам генерировать тестовые данные:

Если этот вопрос касается задержки при запуске теста, вам, вероятно, следует взглянуть на spork .

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

Проверяет все методы, один за другим, в модульных тестах. И тестирует все сценарии в функциональных тестах.

спецификация / блок / user_spec.rb

describe "#generate_password_salt" do
  user = User.new(password: 'foobar')
  user.generate_password_salt.should == '1231asdas'
end

спецификация / функционал / user_spec.rb

describe "when creating new user" do
  it "should generate password salt" do
     ...
  end      
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...