4

我正在尝试为调用外部 API 的模型编写测试。是否可以使用 WebMock 从 URL 中提取参数?

例如,我想匹配任何这样的 URL:

http://test.com?id=# {number}&id2=#{number2}

#{number} 和 #{number2} 是正则表达式。到这里为止,这可以使用 WebMock,如此处所述: https ://github.com/bblimke/webmock#matching-uris-using-regular-expressions

我的问题是我需要知道请求中的“number”和“number2”是什么,才能在测试中使用它们。有没有办法做到这一点?

如果有 WebMock 的替代品,请随时提出建议。

编辑:一些额外的细节:

假设我有一个测试可以测试一个调用外部 API 的函数,我知道它将使用 URL 中的一些参数调用它,但我不知道它将采用的值,所以我这样做:

stub_request(:get,/test.com?id=(?<first_id>\d+)&id2=(?<second_id>\d+)/).to_return(:status => 200, :body => some_function_that_can_use(first_id,second_id))
4

0 回答 0