Почему мои функциональные тесты не проходят? - PullRequest
5 голосов
/ 29 мая 2010

Я создал несколько лесов для моего приложения rails.

Я запускаю сгенерированные тесты, и они не работают.

например

  test "should create area" do
    assert_difference('Area.count') do
      post :create, :area => { :name => 'area1' }
    end

    assert_redirected_to area_path(assigns(:area))
  end

Этот тест не пройден, сказав, что:

1) Отказ: test_should_create_area (AreasControllerTest) [/Test/functional/areas_controller_test.rb:16]: «Area.count» не изменился на 1. <3> ожидаемый, но был <2>.

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

Я могу запустить сайт и создать область с именем 'area1'. Итак, реальность преуспевает, но испытание проваливается.

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

Какие шаги я могу предпринять, чтобы отследить это?

Ответы [ 2 ]

2 голосов
/ 29 мая 2010

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

1 голос
/ 29 мая 2010

@ request и @response - также полезные объекты для просмотра (т.е. puts @response внутри вашего теста). Я не знаю, какую аутентификацию вы используете, но отметьте RAILS_ROOT/lib для authenticated_test_helper, или /lib, или /test вашего удостоверения личности. Вы найдете методы для входа в систему.

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