Jest 单元测试 Vue 项目中引入的 mint-ui 报错

Jest 单元测试 Vue 项目中引入的 mint-ui 报错

import {
      mount, createLocalVue } from '@vue/test-utils'
import MintUI from 'mint-ui'
import Signdetail from '@/pages/signing/sign-detail1.vue'

const localVue = createLocalVue()
localVue.use(MintUI )

describe('sign-detail1.vue', () => {
     
  const wapper = mount(Signdetail, {
      localVue })

  it('测试props', () => {
     
  	...
  })
})

Jest 单元测试 Vue 项目中引入的 mint-ui 报错_第1张图片
根据错误提示打开源码node_modules/mint-ui/lib/mint-ui.common.js:行:7034:44
Jest 单元测试 Vue 项目中引入的 mint-ui 报错_第2张图片
可以看到,是浏览器检测不到类型引起的报错

undefined.toLowerCase()

VM217:1 Uncaught TypeError: Cannot read property 'toLowerCase' of undefined
    at <anonymous>:1:11

所以接下来我原改一下源码
Jest 单元测试 Vue 项目中引入的 mint-ui 报错_第3张图片

  // var transitionEndProperty = vendorPrefix.toLowerCase() + 'TransitionEnd';
  var transitionEndProperty = 'TransitionEnd';
  if (vendorPrefix !== undefined) {
     
    transitionEndProperty = vendorPrefix.toLowerCase() + transitionEndProperty
  }

问题解决一切OK!

你可能感兴趣的:(Jest,Vue,Test,Utils,vue,vue.js)