我在 Jest 中有以下用于组件的测试套件。我已经成功地为遵循类似结构的其他几个组件编写了单元测试:
import { createLocalVue, mount } from '@vue/test-utils'
import Vuex from 'vuex'
import storeMock from '@mocks/store'
import RequestProposalsContainer from '@/components/RequestProposals/RequestProposalsContainer'
describe('ProviderComparison component', () => {
let localVue, store, wrapper, storeSetup
beforeEach(() => {
localVue = createLocalVue()
localVue.use(Vuex)
storeSetup = storeMock()
store = new Vuex.Store(storeSetup)
/* wrapper is undefined and I'm not sure why */
wrapper = mount(RequestProposalsContainer, {
localVue,
store
})
})
it('renders correct structure', () => {
/* undefined */
console.log('wrapper: ', wrapper)
})
})
通过检查,被挂载的组件、存储和 localVue 实例是明确定义的。
最佳答案
我遇到了类似的情况,wrapper
会回来未定义。
在测试时,您必须为组件提供渲染所需的一切。
这是(正如@Adam Freymiller 已经提到的)所有必需的值( Prop 、存储值等)都没有在测试中设置,所以组件会出错,就像它在现实生活中的情况一样。
关于javascript - Vue-test-utils 包装器未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52598876/