使用 xhr (xml_http_request) 进行测试时有啥好处?
Posted
技术标签:
【中文标题】使用 xhr (xml_http_request) 进行测试时有啥好处?【英文标题】:What benefits do I get when testing with xhr (xml_http_request)?使用 xhr (xml_http_request) 进行测试时有什么好处? 【发布时间】:2011-05-03 10:21:53 【问题描述】:我的控制器可以响应 html、xml 和 json 请求:
respond_to 做 |格式| format.html # index.html.erb format.xml 渲染 :xml => @people format.json 渲染 :json => @people 结尾在我的 RSpec 测试中,我通常使用 get 或 post 方法进行请求,例如get :index, :format => "json"
。这工作正常。我从使用 xhr (xhr :get, :index, :format => "json"
) 的请求中得到什么好处?
我知道现在在标头中声明这是一个 XmlHttpRequest,但 respond_to 似乎也适用于正常请求(即使是 xml 或 json)。
【问题讨论】:
【参考方案1】:如果您的 respond_to 在所有接受格式的 http 请求中都能正常工作,那么对于 AJAX 请求应该没有什么不同,除非 AJAX 有问题。如果您的测试失败,那么您很可能在 AJAX 中暴露了一个错误,而不是在您的控制器代码中。从技术上讲,您的测试应该针对您的应用程序,而不是您的应用程序使用的某些技术。另一方面,使用编程测试来暴露您正在使用的技术中的错误并不是一件坏事。
【讨论】:
以上是关于使用 xhr (xml_http_request) 进行测试时有啥好处?的主要内容,如果未能解决你的问题,请参考以下文章