我在rspec上运行此测试...
it 'get email is successful' do
get :email
response.should be_success
response.should render_template('email')
端
控制器代码如下所示..
def email
respond_to do |format|
format.js
end
end
在我的终端上,我正带着....
3) PostsController checking to see if response for post email is successful
Failure/Error: response.should be_success
expected success? to return true, got false
# ./spec/controllers/posts_controller_spec.rb:116:in `block (3 levels) in <top
(required)>'
我在这里缺少什么来进行测试?它必须是明显的东西。我的观看文件标题为email.js.erb
。此操作适用于AJAX调用。
答案 0 :(得分:3)
您的控制器的结构只返回JS请求的任何内容,并且您在测试中请求HTML响应。你应该
get :email.js
在你的规范中。
答案 1 :(得分:3)
尝试:
xhr :get, :email
您的请求似乎没有考虑预期的响应类型。在Rspec中,如果要模拟AJAX(XHR)请求,可以使用此方法。