模拟 q-io/http 请求的最佳方式是什么?

What is the best way to mock q-io/http requests?

我正在尝试为我的 HTTP service 编写单元测试。我的服务与另一个远程 HTTP service 交互,我使用 using q-io/http 进行交互。

我想使用 nock 包之类的东西来模拟我对远程服务的调用,但是 q-io/http 似乎与 nock 不兼容(我我假设这意味着请求模块实际上并没有像我希望的那样在 q-io/http 的掩护下使用 ).

还有其他方法可以模拟 q-io/http 请求吗? Q 中似乎没有像文件那样包含 http 模拟功能。

事实证明q-io/http确实在幕后使用了标准请求模块,随后,可以将nock与q-io/http模块一起使用。

对我来说,问题是箭尾不符合我的要求,异常被捕获吞没了。使用 nock log(console.log) 机制使匹配问题变得明显:

nock(documentUrl)
  .delete('/state')
  .reply(204, {})
  .log(console.log);