小编coo*_*xeo的帖子

如何用Nock测试请求中的错误?

我想在请求返回中测试错误.我在测试中使用nock,如何强迫Nock引发错误?我想实现100%的测试覆盖率,并且需要测试错误的分支

request('/foo', function(err, res) {
  if(err) console.log('boom!');
});
Run Code Online (Sandbox Code Playgroud)

永远不要进入if err分支.即使命中错误是一个有效的响应,我的测试中的Nock行看起来像这样

nock('http://localhost:3000').get('/foo').reply(400);
Run Code Online (Sandbox Code Playgroud)

编辑: 感谢您的一些评论:

  • 我正在尝试模拟请求中的错误.从节点手册:https : //nodejs.org/api/http.html#http_http_request_options_callback 如果在请求期间遇到任何错误(具有DNS解析,TCP级别错误或实际的HTTP解析错误),则会出现"错误"事件在返回的请求对象上发出
  • 错误代码(例如4xx)未定义错误变量.我试图模仿那个,无论定义错误变量的错误和评估为真

node.js nock

17
推荐指数
3
解决办法
9237
查看次数

标签 统计

nock ×1

node.js ×1