axios.get.mockResolvedValue()在testfile.test.ts (Vue/Vitest)中



我目前正在将vitest集成到我的Vue应用程序中。单元测试运行成功。然而,我得到一个错误消息:属性"mockResolvedValue"is for type ">

在测试文件的开头,我有以下内容:

vi.mock('axios', () => {
return {
default: {
get: vi.fn()
}
}
});

现在我想在test()方法中使用模拟的axios:

const mockedData = {
"title": "Testtitle",
"price": 13.98
}
test('Description', async () => {
axios.get.mockResolvedValue({
status: 200,
data: mockedData
});
expect(await callFunctionToTest()).toStrictEqual(mockedData)
})

这就是问题所在。

谁能告诉我是什么问题?

有一个帮助器vi.mocked()可以用typescript解决这个问题。

https://vitest.dev/api/vi.html vi-mocked

这个应该可以修复它:

vi.mocked(axios.get).mockResolvedValue()

我不知道如何用*.test.ts文件解决这个问题,但我在使用*.test.js文件时解决了这个问题。

最新更新