问题标签 [webmock]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
1235 浏览

ruby-on-rails - Webmock 从 API 返回响应对象?

我调用一个 API,然后我在其中获取他们的 xml 并对其进行解析以返回一个Response对象。

调用 3rd 方 API 的典型内容。

所以现在在我的测试中,我想使用 webmock 说“当你收到访问 example.com 的请求时,只需给我一个 Response.new 对象,这样我就可以继续我的代码并处理它”。

我正在使用 rspec。这是到目前为止的代码。

测试代码为:

错误总是导致响应不是 Nil 的方法,这意味着我没有传递任何看起来像的东西。

0 投票
1 回答
573 浏览

ruby-on-rails-3 - 在 Cucumber 功能中使用 VCR 测试 Rails 3 后台作业(API-Request)的响应

我有一个 Rails 3 后台作业 (delayed_job),它向他们的 API 发送一条 hipchat / Campfire 消息,我想检查我的 Cucumber 功能中的响应。有没有办法获得 VCR 记录的最后一个 HTTP 响应?

该功能看起来像这样

在我的步骤定义中,我想检查响应正文:

VCR 已经记录了请求和响应,但我不知道如何获取它们。我想到了类似于捕获使用 Pickle 的步骤发送的电子邮件的方法。有谁知道如何做到这一点?

我使用 rails 3.2.8、cucumber-rails 1.3 和 vcr 2.2.4(带有 webmock)。

最好的问候托斯滕

0 投票
1 回答
619 浏览

ruby-on-rails - 使用 Webmock 伪造成功的 ActiveMerchant 响应

我正在使用 ActiveMerchant 与 Authorize.net CIM 集成。我正在编写自动化测试,并且我已经开始实施 Webmock 调用,这样我的测试在每次运行时都不会真正访问 Authorize.net。

我已经根据原始请求数据的响应创建了 XML 文件,并且在大多数情况下,它运行良好。但是,当我模拟一个成功的响应时,ActiveMerchant 出于某种原因仍然告诉我 Response.success?不是真的。

我的功能

然后我的回复是:

ActiveMerchant 是否有任何理由无法处理成功的存根请求?还是我错过了 ActiveMerchant 为了注册响应实际上成功而需要的东西?

0 投票
3 回答
499 浏览

ruby - 如何测试与 Web 服务通信的 Ruby 命令行程序?

我正在构建一个与 Web 服务通信的 Ruby 命令行程序。我正在使用 Cucumber 和 Aruba 来测试程序。问题是我需要控制从 Web 服务返回的数据;该程序会抓取用户评论流,因此随着新评论的添加,这可能会经常更改。我尝试使用 WebMock 模拟 Web 服务,但这不起作用,因为 Aruba 将命令行程序转为不受 WebMock 影响的单独进程(因此它仍然与真正的Web 服务通信)。

如何使用 Cucumber 测试该程序的输出?


编辑:Web 服务将流作为 JSON 数据返回。我已经捕获了用于测试的数据快照;简而言之,我正在寻找一种方法来替换我的静态数据来代替对 Web 服务的实际调用。

或者,如果有完全不同的方式来实现这个目标,我会全神贯注。

0 投票
3 回答
11854 浏览

ruby - 如何使用 webmock 正则表达式匹配器?

如何匹配如下 URL:

stub_request(:post, "www.example.com")

0 投票
2 回答
1970 浏览

ruby - 如何使用 WebMock 在 Sinatra 应用程序中模拟 Paperclip 调用?

此代码在没有 WebMock 的情况下可以正常工作。

引发异常:

测试:

api_mock.rb:

0 投票
1 回答
747 浏览

ruby-on-rails - 使用黄瓜并模拟重定向到贝宝并返回

我有一个黄瓜测试,测试用户添加贝宝预先批准。在我的控制器中,我重定向到贝宝预批准网址。

因此,在我的黄瓜测试中,我想将重定向存根(使用 Webmock)以避免在我的测试中依赖于贝宝网站,并让它像成功一样回到我的应用程序。

但是,这似乎给了我一个超时。我不太确定我接近它的方式是否正确。有什么想法我可能做错了吗?

0 投票
1 回答
2119 浏览

ruby - 如何在机架/测试中设置 env['SERVER_NAME']?

在 Sinatra 测试中,env['SERVER_NAME']默认为www.example.com. 如何将其设置为任意域?

Capybara 有.default_host方法,但不使用 Capybara。

或者,是否可以更改 env[ DEFAULT_HOST]?

使用 RSpec、Sinatra、WebMock。

编辑:添加env['SERVER_NAME'] = 'www.foo.com'到 RSpec 测试会引发异常:

NameError: undefined local variable or method 'env' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_1:0x007fe6ce3b5ff8>

0 投票
2 回答
451 浏览

ruby - 来自文件数组的 stub_request 链 to_return

我有一个使用 web_mock 的 raw_responses 数组,我想将它们用作to_return方法的参数并链接到stub_request方法:

如何使用枚举器或类似 tap 的东西重写最后一个字符串以使用rr的所有数组?

0 投票
1 回答
409 浏览

ruby - Ruby TestUnit、VCR 和 HTTP API 请求

我正在构建一个 API 包装器并为它编写一些测试,我有几个问题。

1)我如何assert为不存在数据的调用编写一个?例如,使用 API 通过 id 查找成员,但该用户尚不存在。
2)我如何编写assert测试PUTDELETE请求?

我已经掌握了测试GETPOST请求,只是不确定其他 2 个动词。