我正在写一个gem,我想检查它是否正在执行一个带有它应该通过的参数,标题和内容的http请求。我该如何编写单元测试。
我正在使用httparty来执行请求,我也在使用fakeweb来测试响应后的操作。
答案 0 :(得分:3)
我建议使用webmock并包含应创建的存根请求:
在你的Gemfile中:
group :test do
gem 'webmock'
end
在您的规范中:
stub_request(:post,
"https://external.api.com")
.with(:body => {:message => {:foo => 'bar'}},
:headers => {'Accept'=>'application/json'})