拥有一个带有axios设置的Vue应用程序,并在组件中将其用作targetSdkVersion
,并且运行正常。
使用Jest运行规范时出现错误:this.$http.get
我知道我可以用maxios嘲笑axios。如何让Jest识别$ http,这样就不会出错?
答案 0 :(得分:1)
您需要为测试创建一个Vue的本地实例,并向其中介绍您正在使用的Vue插件,例如axios。
import { createLocalVue, shallowMount } from "@vue/test-utils"
import axios from 'axios'
import VueAxios from 'vue-axios'
const localVue = createLocalVue();
localVue.use(VueAxios, axios)
以后,在你的实际测试中:
it('should mount the component where I want to use $http', () => {
const wrapper = shallowMount(MyApiComponent, { localVue });
... do stuff to wrapper here ...
})