我想要一种模拟网络请求并能够检查/验证模拟API接收到的内容的方法。大多数模拟框架仅允许您验证响应。
答案 0 :(得分:0)
您可以使用nock模拟API,它的工作原理如下。
const expect = require('chai').expect;
const nock = require('nock');
describe('Get User tests', () => {
beforeEach(() => {
nock('https://api.github.com')
.get('/users/octocat')
.reply(200, response);
});
it('Get a user by username', () => {
});
});
以下是更多详细信息的链接https://scotch.io/tutorials/nodejs-tests-mocking-http-requests#toc-testing-the-right-way
答案 1 :(得分:0)
我认为sinon
和&sinon.spy()正是您需要stubbed函数进行此API调用或模拟了API(使用nock
库之后)所需要的自称。
调用了被监视的函数后,可以使用spy.calledWith(arg1, arg2, ...);
来检查调用该函数的参数。您还拥有其他有用的工具,例如调用了多少次或何时调用……