vuejs单元测试运行npm run unit报错解决方法
安装vue init webpack
的时候看看是否安装了test
插件,如果安装了可以在package.json
看到scripts
有jest
的几个运行方法,在devDependencies
可以找到版本号。
npm run unit
运行
如果提示下面错误
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! test@1.0.0 unit: `jest --config test/unit/jest.conf.js --coverage`
找到test/unit/jest.conf.js文件,看看是否一样
const path = require('path');
module.exports = {
rootDir: path.resolve(__dirname, '../../'),
moduleFileExtensions: [ 'js', 'json', 'vue', ],
moduleNameMapper: { '^@/(.*)$': '/src/$1', },
transform: {
'^.+\\.js$': '/node_modules/babel-jest',
'.*\\.(vue)$': '/node_modules/vue-jest',
},
testPathIgnorePatterns: [ '/test/e2e', ],
snapshotSerializers: ['/node_modules/jest-serializer-vue'],
setupFiles: ['/test/unit/setup'],
coverageDirectory: '/test/unit/coverage',
collectCoverageFrom: [
'src/components/common/**/*.{js,vue}', //按项目需求修改路径
'!src/main.js',
'!src/router/index.js',
'!**/node_modules/**', ],
verbose: true,
testURL: 'http://localhost/',
};
找到test/unit/setup.js
import Vue from 'vue'
Vue.config.productionTip = false
再运行npm run unit
,应该没问题了,页面的覆盖率出来了!