我是测试和GraphQL的新手。我正在尝试使用vue- test -utils和jest测试我的使用GraphQL的VueJS应用程序。我有一个组件,它从挂载的钩子中的graphql服务器获取类别。
mounted() {
this.$apollo
.query({
query: getCategories
})
.then(res => {
this.categoriesData[0].options = res.data.categories;
});
}在我的StepTwo.spec.js中,我将Vue-apollo添加到vue实例中。
const Vue = createLocalVue();
Vue.use(VeeValidate);
Vue.use(BootstrapVue);
Vue.use(VueApollo);
test("Step Two ", async () => {
const wrapper = shallowMount(StepTwo, { localVue: Vue });
});当我试图挂载我的组件时,我得到了TypeError: Cannot read property 'query' of undefined。任何帮助都将不胜感激。
发布于 2019-06-18 12:54:56
我设法算出来了,但我不知道这是不是正确的方法。我在挂载组件时模仿了$apollo。
mocks: {
$apollo: {
query: jest.fn(() => Promise.resolve({
data: {
categories,
subCategories: categories
}
}))
}
}https://stackoverflow.com/questions/56525280
复制相似问题