问题标签 [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.
ruby-on-rails - Webmock 从 API 返回响应对象?
我调用一个 API,然后我在其中获取他们的 xml 并对其进行解析以返回一个Response
对象。
调用 3rd 方 API 的典型内容。
所以现在在我的测试中,我想使用 webmock 说“当你收到访问 example.com 的请求时,只需给我一个 Response.new 对象,这样我就可以继续我的代码并处理它”。
我正在使用 rspec。这是到目前为止的代码。
测试代码为:
错误总是导致响应不是 Nil 的方法,这意味着我没有传递任何看起来像的东西。
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)。
最好的问候托斯滕
ruby-on-rails - 使用 Webmock 伪造成功的 ActiveMerchant 响应
我正在使用 ActiveMerchant 与 Authorize.net CIM 集成。我正在编写自动化测试,并且我已经开始实施 Webmock 调用,这样我的测试在每次运行时都不会真正访问 Authorize.net。
我已经根据原始请求数据的响应创建了 XML 文件,并且在大多数情况下,它运行良好。但是,当我模拟一个成功的响应时,ActiveMerchant 出于某种原因仍然告诉我 Response.success?不是真的。
我的功能
然后我的回复是:
ActiveMerchant 是否有任何理由无法处理成功的存根请求?还是我错过了 ActiveMerchant 为了注册响应实际上成功而需要的东西?
ruby - 如何测试与 Web 服务通信的 Ruby 命令行程序?
我正在构建一个与 Web 服务通信的 Ruby 命令行程序。我正在使用 Cucumber 和 Aruba 来测试程序。问题是我需要控制从 Web 服务返回的数据;该程序会抓取用户评论流,因此随着新评论的添加,这可能会经常更改。我尝试使用 WebMock 模拟 Web 服务,但这不起作用,因为 Aruba 将命令行程序转为不受 WebMock 影响的单独进程(因此它仍然与真正的Web 服务通信)。
如何使用 Cucumber 测试该程序的输出?
编辑:Web 服务将流作为 JSON 数据返回。我已经捕获了用于测试的数据快照;简而言之,我正在寻找一种方法来替换我的静态数据来代替对 Web 服务的实际调用。
或者,如果有完全不同的方式来实现这个目标,我会全神贯注。
ruby - 如何使用 webmock 正则表达式匹配器?
如何匹配如下 URL:
stub_request(:post, "www.example.com")
ruby - 如何使用 WebMock 在 Sinatra 应用程序中模拟 Paperclip 调用?
此代码在没有 WebMock 的情况下可以正常工作。
引发异常:
测试:
api_mock.rb:
ruby-on-rails - 使用黄瓜并模拟重定向到贝宝并返回
我有一个黄瓜测试,测试用户添加贝宝预先批准。在我的控制器中,我重定向到贝宝预批准网址。
因此,在我的黄瓜测试中,我想将重定向存根(使用 Webmock)以避免在我的测试中依赖于贝宝网站,并让它像成功一样回到我的应用程序。
但是,这似乎给了我一个超时。我不太确定我接近它的方式是否正确。有什么想法我可能做错了吗?
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>
ruby - 来自文件数组的 stub_request 链 to_return
我有一个使用 web_mock 的 raw_responses 数组,我想将它们用作to_return方法的参数并链接到stub_request方法:
如何使用枚举器或类似 tap 的东西重写最后一个字符串以使用rr的所有数组?
ruby - Ruby TestUnit、VCR 和 HTTP API 请求
我正在构建一个 API 包装器并为它编写一些测试,我有几个问题。
1)我如何assert
为不存在数据的调用编写一个?例如,使用 API 通过 id 查找成员,但该用户尚不存在。
2)我如何编写assert
测试PUT
和DELETE
请求?
我已经掌握了测试GET
和POST
请求,只是不确定其他 2 个动词。