首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >测试HTTP-request不是Rails发出的

测试HTTP-request不是Rails发出的
EN

Stack Overflow用户
提问于 2013-03-18 23:12:22
回答 3查看 1.7K关注 0票数 1

如果未发出HTTP请求,则最简单的测试方法是什么?

比方说,如果用户没有提供用户名,我希望我的应用程序不向远程服务器发送API调用。

我应该在我的Rails应用程序中编写什么RSpec测试来测试从未发出过的HTTP请求?fakeweb能以某种方式帮助我吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-03-19 06:27:01

你可能应该试试WebMock

它允许你检查某个url被请求的次数。

代码语言:javascript
复制
assert_requested :post, "http://www.example.com", :times => 0
票数 3
EN

Stack Overflow用户

发布于 2014-11-14 23:49:23

假设我们有以下代码,它向GitHub的API发出条件请求。

代码语言:javascript
复制
if condition
  user = Octokit.user 'dideler'
end

使用RSpec,您可以测试对象是否没有接收到方法调用的消息。

代码语言:javascript
复制
expect(Octokit).to_not receive(:user)

如果它通过了,那就意味着请求没有被发出。

票数 1
EN

Stack Overflow用户

发布于 2013-03-18 23:18:05

我想我明白你在问什么了。您只想进行错误检查,以查看请求是否已发送或有效。

If username !=空白--> api调用否则返回‘您没有输入用户名’。

或者您可以使用api的返回数据来检查请求是否有效。

我希望这能帮到你。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15480199

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档