我想在我的 Rails 应用程序中测试我的功能,但测试需要用户/管理员登录。我查看了很多网站,但我无法掌握我真正应该做些什么才能让它工作。我确信有一件简单的事情可以做,但我似乎找不到它。
我已经看到使用了 stubs 命令,但我只知道它是一个未定义的方法,我真的不知道它应该做什么。
关于如何像用户/管理员请求它们一样运行测试的任何想法?
感谢我可能得到的任何帮助。
我想在我的 Rails 应用程序中测试我的功能,但测试需要用户/管理员登录。我查看了很多网站,但我无法掌握我真正应该做些什么才能让它工作。我确信有一件简单的事情可以做,但我似乎找不到它。
我已经看到使用了 stubs 命令,但我只知道它是一个未定义的方法,我真的不知道它应该做什么。
关于如何像用户/管理员请求它们一样运行测试的任何想法?
感谢我可能得到的任何帮助。
如果您使用的是黄瓜,只需以用户身份登录。就像是:
fill_in 'users[username]', :with => "my username" fill_in 'users[password]', :with => "my password" click_button "Log In"
如果你使用 rspec+capybara,你可以这样做(假设你使用 Devise 进行身份验证)
# spec/spec_helper.rb
include Warden::Test::Helpers
# in spec/acceptance/some_spec.rb
...
login_as FactoryGirl.create(:user)
session
对象或存根current_user
(假设您这样称呼它)来实现类似的功能