两个shallowmount抛出错误Jest VueJs(Vuetify)

SAF*_*SAF 1 javascript unit-testing vue.js jestjs vuetify.js

我将 VueJs 与 Vuetify 一起使用,我想测试我的组件:

import { shallowMount, createLocalVue } from '@vue/test-utils'
import UserRating from '@/views/dashboard/pages/User_Ratings.vue'
import BaseMaterialCard from '@/components/base/MaterialCard'
import Vuetify from 'vuetify'
let localVue

describe('user ratings Component Unit test', () => {
  let vuetify
  beforeEach(() => {
    localVue = createLocalVue()
    vuetify = new Vuetify()
    localVue.use(vuetify)
  })
  it('is a Vue instance', () => {
    const msg = 'new message'
    const wrapper = shallowMount(UserRating, {
      localVue,
      vuetify,
      sync: false,
      propsData: { msg },
    })

    expect(wrapper.isVueInstance()).toBeTruthy()
  })
  it('Checks the data-title', () => {
    const wrapper = shallowMount(UserRating, {
      localVue,
      vuetify,
      sync: false,
    })
    expect(wrapper.vm.title).toMatch('Users Reviews')
  })
  it('renders the reviews list', () => {
    const wrapper = shallowMount(UserRating, {
      localVue,
      vuetify,
      sync: false,
    })
    expect(wrapper.html()).toContain('v-simple-table')
  })
  it('check if child BaseMaterialCard exists', () => {
    const wrapper = shallowMount(UserRating, {
      sync: false,
    })
    expect(wrapper.contains(BaseMaterialCard)).toBe(true)
  })
})
Run Code Online (Sandbox Code Playgroud)

我尝试了以下解决方案:测试 Vuetify (Vue.js) - Second call on mount 抛出错误 ,但是当我独立运行每个测试时,我没有问题,但是当我使用 npm run test 或 jest 时,我运行的测试出现错误:

console.error node_modules/vue/dist/vue.runtime.common.dev.js:1884 TypeError: 无法设置未定义的属性 '_error' console.error node_modules/vue/dist/vue.runtime.common.dev.js:621 [Vue warn]:nextTick 中的错误:“TypeError:无法读取 null 的属性‘createElement’”

SAF*_*SAF 6

我不知道这是否是问题所在,但我在每个测试的末尾添加了wrapper.destroy(),它现在可以正常工作,没有错误