【发布时间】:2022-07-21 19:22:12
【问题描述】:
我目前正在将 vitest 集成到我的 Vue 应用程序中。单元测试成功运行。
但是,我收到一条错误消息:
'属性“mockResolvedValue”适用于类型“
在测试文件的开头我有以下内容:
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)
})
这就是问题发生的地方。
谁能告诉我问题出在哪里?
【问题讨论】:
-
供您参考:看起来问题仅在您使用 .ts 文件时才会出现。我将其更改为 .js,现在效果很好。有谁知道如何使用 .ts 测试文件运行它?
-
我在尝试在 Vue/Vite 项目中模拟
plyr库时遇到了类似的问题。当包与打字稿一起使用并且在 Vue 单文件组件中时,模拟似乎在 vitest 中不起作用。那将是我的猜测。我在 vitest 上创建了一个问题,您可能还想在其中添加问题? github.com/vitest-dev/vitest/issues/1484
标签: vue.js axios mocking vitest