Ошибки при тестировании рельсов функционалов - PullRequest
2 голосов
/ 13 марта 2012

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

AdminControllerTest:
ERROR should get index (0.13s) 
NoMethodError: undefined method `users' for #<AdminControllerTest:0x007fe9e0119000>      /Users/@@@@@/Dropbox/blind/rack/ruby/1.9.1/gems/actionpack- 3.1.3/lib/action_dispatch/testing/assertions/routing.rb:175:in `method_missing'


CartsControllerTest:
ERROR should create cart (0.12s) 
NoMethodError: undefined method `carts' for #<CartsControllerTest:0x007fe9de592b10>
/Users/@@@@@/Dropbox/blind/rack/ruby/1.9.1/gems/actionpack
3.1.3/lib/action_dispatch/testing/assertions/routing.rb:175:in `method_missing'

ERROR should destroy cart (0.17s) 
NoMethodError: undefined method `carts' for #<CartsControllerTest:0x007fe9de3569a0>
/Users/@@@@@/Dropbox/blind/rack/ruby/1.9.1/gems/actionpack-   3.1.3/lib/action_dispatch/testing/assertions/routing.rb:175:in `method_missing'

ERROR should get edit (0.12s) 
NoMethodError: undefined method `carts' for #<CartsControllerTest:0x007fe9e10c19d0>
/Users/@@@@@/Dropbox/blind/rack/ruby/1.9.1/gems/actionpack-3.1.3/lib/action_dispatch/testing/assertions/routing.rb:175:in `method_missing'

ERROR should get index (0.11s) 
NoMethodError: undefined method `carts' for #<CartsControllerTest:0x007fe9e10604f0>
/Users/@@@@@/Dropbox/blind/rack/ruby/1.9.1/gems/actionpack-3.1.3/lib/action_dispatch/testing/assertions/routing.rb:175:in `method_missing'

ERROR should get new (0.11s) 
NoMethodError: undefined method `carts' for #<CartsControllerTest:0x007fe9e1033fe0>
/Users/@@@@@/Dropbox/blind/rack/ruby/1.9.1/gems/actionpack-3.1.3/lib/action_dispatch/testing/assertions/routing.rb:175:in `method_missing'

ERROR should show cart (0.11s) 
NoMethodError: undefined method `carts' for #<CartsControllerTest:0x007fe9e10109c8>
/Users/@@@@@/Dropbox/blind/rack/ruby/1.9.1/gems/actionpack-3.1.3/lib/action_dispatch/testing/assertions/routing.rb:175:in `method_missing'

ERROR should update cart (0.12s) 
NoMethodError: undefined method `carts' for #<CartsControllerTest:0x007fe9de460558>
/Users/@@@@@/Dropbox/blind/rack/ruby/1.9.1/gems/actionpack-3.1.3/lib/action_dispatch/testing/assertions/routing.rb:175:in `method_missing'

тест контроллера тележки требуется 'test_helper'

class CartsControllerTest < ActionController::TestCase
setup do
@cart = carts(:one)
end

test "should get index" do
get :index
assert_response :success
assert_not_nil assigns(:carts)
end

test "should get new" do
get :new
assert_response :success
end

test "should create cart" do
assert_difference('Cart.count') do
post :create, cart: @cart.attributes
end

assert_redirected_to cart_path(assigns(:cart))
end

test "should show cart" do
get :show, id: @cart
assert_response :success
end

test "should get edit" do
get :edit, id: @cart
assert_response :success
end

Что может быть причиной этого?

Ответы [ 2 ]

1 голос
/ 13 марта 2012

Похоже, у него проблемы с загрузкой приборов. Он не может понять, как разрешить метод carts в вашем определении setup.

Вы установили их в каталоге test/fixtures/?

См. руководство по тестированию рельсов для получения информации о том, как правильно их настроить, но я предполагаю, что вы хотите что-то вроде этого:

test/fixtures/carts.yml:

one:
  name: bork
  foo_attribute: bar_value
two:
  name: other_cart
  foo_attribute: blah_value
0 голосов
/ 13 марта 2012

Проверьте, создали ли вы тестовую базу данных.

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