1

我正在使用 WebMock 来存根 HTTP 请求。我有这个特殊的调用,而不是创建要传递的虚拟数据,我希望能够捕获我将传递给我的 send() 方法的实际参数。因此,我需要访问规范中的那些实际参数,我想我需要以某种方式捕获该上下文。

因此,例如,在我的应用程序中,我调用了这个方法:

  send(method, uri, :body => data_file)

在我的规范文件中,我正在对方法进行存根:

  FoobarModule.should_receive(:send).with(args)

有什么方法可以——在 WebMock、Rspec 中——获取应用程序中何时调用 send() 的上下文,并获取我传递的那些参数以在规范中使用它们并用 args 替换它们?

我已经查看了文档,但我没有看到太多关于此的任何内容。如果有人知道这一点,我将非常感谢您的帮助。谢谢。

4

1 回答 1

1

使用 WebMock,您可以使用请求回调来捕获请求数据:

WebMock.allow_net_connect!
WebMock.after_request do |request_signature, response|
 puts request_signature
end
于 2013-12-02T21:45:36.980 回答