测试HTTP请求是否未被测试的最简单方法是什么?测试HTTP请求不是在Rails中进行的
说,我希望我的应用程序不发送API调用到远程服务器,如果用户不提供用户名。
我应该在Rails应用程序中编写什么RSpec测试来测试HTTP请求是否永远不会生成? fakeweb能以某种方式帮助我吗?
测试HTTP请求是否未被测试的最简单方法是什么?测试HTTP请求不是在Rails中进行的
说,我希望我的应用程序不发送API调用到远程服务器,如果用户不提供用户名。
我应该在Rails应用程序中编写什么RSpec测试来测试HTTP请求是否永远不会生成? fakeweb能以某种方式帮助我吗?
您应该尝试WebMock。
它允许你检查一些url被请求的次数。
assert_requested :post, "http://www.example.com", :times => 0
我想我明白你在问什么。你只是想错误检查,看看发送的请求或有效。
如果用户名!=空 - > api调用else返回'您没有输入用户名'。
或者您可以使用api的返回数据来检查请求是否有效。
我希望这会有所帮助。
假设我们有下面的代码向GitHub的API发出有条件的请求。
if condition
user = Octokit.user 'dideler'
end
使用RSpec的,你可以测试对象没有收到消息的方法调用。
expect(Octokit).to_not receive(:user)
如果通过,则表示请求未被执行。
对不起,我需要让我的问题更清楚。我应该在Rails应用程序中编写什么样的RSpec测试来测试HTTP请求是否永远不会生成?我也更新了我的问题。 – 2013-03-18 15:36:22