我的控制器可以响应html,xml和json请求:
respond_to do |format| format.html # index.html.erb format.xml { render :xml => @people } format.json { render :json => @people } end
在我的RSpec测试中,我通常使用get或post方法请求,例如get :index, :format => "json"
。这很好用。使用xhr(xhr :get, :index, :format => "json"
)的请求可以获得哪些好处?
我知道在标题中它现在声明这是一个XmlHttpRequest,但respond_to似乎也适用于正常请求(即使对于xml或json)。
答案 0 :(得分:0)
如果您的respond_to在所有可接受格式的http请求中都能正常工作,那么除非AJAX出现问题,否则AJAX请求应该没有区别。如果您的测试失败,那么您可能会暴露AJAX中的错误,而不是您的控制器代码中。从技术上讲,您的测试应该针对您的应用程序,而不是您的应用程序使用的某些技术。另一方面,使用程序化测试来揭露您正在使用的技术中的错误并不是一件坏事。