测试HTTP请求是否最简单的方法是什么?
说,如果用户没有提供用户名,我希望我的应用程序不要向远程服务器发送API调用。
我应该在Rails应用程序中编写什么RSpec测试来测试从未发出HTTP请求? fakeweb可以以某种方式帮助我吗?
答案 0 :(得分:2)
您应该尝试WebMock 它允许您检查请求某个URL的次数。
assert_requested :post, "http://www.example.com", :times => 0
答案 1 :(得分:1)
假设我们有以下代码向GitHub的API发出条件请求。
if condition
user = Octokit.user 'dideler'
end
使用RSpec,您可以测试对象是否没有收到方法调用的消息。
expect(Octokit).to_not receive(:user)
如果通过,则表示请求尚未完成。
答案 2 :(得分:0)
我想我明白你在问什么。您只想错误检查以查看请求是否已发送或有效。
如果用户名!=空白 - > api调用else返回'你没有输入用户名'。
或者您可以使用api的返回数据来检查请求是否有效。
我希望这会有所帮助。