gpt4 book ai didi

ruby-on-rails - 测试 XML 和 HTTP 响应的 RSpec 方法?

转载 作者:行者123 更新时间:2023-12-04 05:57:40 25 4
gpt4 key购买 nike

我有一个同时使用 XML 和 Web 响应(API 和网站)的 RESTful 站点。由于有很多页面,我当前的目标是设置 RSpec 以简单地以两种数据格式请求每个页面并检查返回的响应是否为 200。检查 XML 和 HTTP 200 响应的最佳方法是什么?我知道我应该预先进行 TDD,但现在我需要它作为 shell。

示例:我想同时请求“/users”和“/users.xml”并测试是否没有任何服务器错误(200 OK)

最佳答案

我在 testing JSON APIs with RSpec 上写了一篇博文几周前。

基本上,我们这样做的方式是获取实际的响应,然后解析它以确保它具有正确的内容。例如:

context "#index (GET /artworks.json)" do
# create 30 Artwork documents using FactoryGirl, and do a HTTP GET request on "/artworks.json"
before(:each) do
30.times { FactoryGirl.create(:artwork) }
get "/artworks.json"
end
describe "should list all artworks" do
# the request returns a variable called "response", which we can then make sure comes back as expected
it { response.should be_ok }
it { JSON.parse(response.body)["results"].should be_a_kind_of(Array) }
it { JSON.parse(response.body)["results"].length.should eq 30 }
# etc...
end
end

显然是一个简单的示例,但希望您能理解。我希望这会有所帮助。

关于ruby-on-rails - 测试 XML 和 HTTP 响应的 RSpec 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7381766/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com