在Jest测试中,我们可以使用async
和await
关键字来处理异步操作。如果我们想要断言一个async
函数是否调用了依赖,可以使用Jest提供的jest.spyOn()
方法来创建一个依赖的模拟函数,并使用toHaveBeenCalled()
方法来断言该模拟函数是否被调用。
下面是一个示例代码:
// 假设我们有一个依赖的模块
const dependency = {
async fetchData() {
// 异步操作
}
};
// 我们要测试的函数
async function myFunction() {
await dependency.fetchData();
// 其他操作
}
// 创建依赖的模拟函数
const fetchDataMock = jest.spyOn(dependency, 'fetchData');
// 执行测试
test('myFunction should call fetchData', async () => {
await myFunction();
expect(fetchDataMock).toHaveBeenCalled();
});
在上面的代码中,我们首先使用jest.spyOn()
方法创建了一个依赖的模拟函数fetchDataMock
,然后在测试函数myFunction
中调用了该模拟函数。最后,我们使用expect(fetchDataMock).toHaveBeenCalled()
断言该模拟函数是否被调用。
这样,我们就可以断言Jest测试中使用async
调用了依赖。
领取专属 10元无门槛券
手把手带您无忧上云