Ruby on rails 测试错误:create方法
所有断言都通过了,但我得到一个错误: 1错误:Ruby on rails 测试错误:create方法,ruby-on-rails,ruby,testing,Ruby On Rails,Ruby,Testing,所有断言都通过了,但我得到一个错误: 1错误: test_should_perform_user_login(SessionsControllerTest): NameError: undefined local variable or method `create' for StoriesController:Class 以下是测试代码: def test_should_perform_user_login
test_should_perform_user_login(SessionsControllerTest):
NameError: undefined local variable or method `create' for StoriesController:Class
以下是测试代码:
def test_should_perform_user_login
post :create, :login => 'patrick', :password => 'sekrit'
assert_redirected_to stories_path
assert_equal users(:patrick).id, session[:user_id]
assert_equal users(:patrick), assigns(:current_user)
end
下面是我在“sessions\u controller.rb”中定义create方法的地方:
def create
@current_user = User.find_by_login_and_password(params[:login], params[:password])
if @current_user
session[:user_id] = @current_user.id
if session[:return_to]
redirect_to session[:return_to]
session[:return_to] = nil
else
redirect_to stories_path
end
else
render :action => 'new'
end
end
这有用吗
我正在读这本书,修正了最大的错误
NameError: undefined local variable or method `create' for StoriesController:Class
这来自于before_filter调用,在该调用中,您在方法符号数组中留下了:冒号
下一个错误是application.rb;它的错误是:
NameError: undefined local variable or method `redirect_to_new_session_path'
redirect_to方法和它的参数new_session_path之间有一个额外的下划线
接下来是商店测试中的假选择器。最后,我要给读者做一个练习:提示:有两个问题。有创建方法吗?为什么SessionControllerTest类引用StoriesController?我有一个create方法。我不知道SessionsControllerTest类是怎么回事,它指的是StoriesControllery,那么您可能需要提供更多信息;看起来故事路径、规格布局等都有问题。我可以发布更多信息吗?我在这里还是很难办。。我在github上也有这个项目。谢谢你的帮助。嗯。。。您使用的是什么版本的Rails?现在看起来像Rails 2.0,这是一个非常旧的版本。除非你有很好的理由,否则请不要使用它。还有,什么版本的Ruby?RSpec呢?只是把事情安排好让它运行,感觉是不对的。