1

我需要使用 mocha 测试异步功能。

试图测试从 axios 返回 Promise 的函数。使用 axios-mock-adapter 浏览了许多示例来解决我的问题。但是:axios 发送真实请求,而不是按预期模拟。

describe ('login sendRequest', () => {
let sandbox = null;
before(() => {
    sandbox = sinon.createSandbox();
});

after(() => {
    sandbox.restore();
});

it('should create and return REST promise', done => {
    const mockAdapter = new MockAdapter(axios);
    const data = { response: true };
    mockAdapter.onAny('http://google.com').reply(200, data);
    const requestParams = {
        method: 'post',
        url: 'http://google.com',
        data: {},
        adapter: adapter,
    };
    logic.sendRequest(requestParams).then(response => {
        console.log(response);
        done();
    }).catch(err => {
        console.log(err);
    });
});
});

逻辑.js

export async function sendRequest(requsetParams) {
   return await requestSender.request(requsetParams);  
}

预计会得到 200 个响应和之前设置的模拟数据。为什么我没有得到我需要的响应?有人可以帮忙吗?

4

0 回答 0