第一部分: 搭建基于 jest 的 vue 单元测试环境
jest 包含了 karma + mocha + chai + sinon 的所有常用功能,零配置开箱即用。
1.安装依赖 (默认已有Bable依赖)
npm install jest vue-jest babel-jest @vue/test-utils -D
2.编写 jest 配置文件
// ./test/unit/jest.conf.js
const path = require('path');
module.exports = {
rootDir: path.resolve(__dirname, '../../'), // 类似 webpack.context
moduleFileExtensions: [ // 类似 webpack.resolve.extensions
'js',
'json',
'vue',
],
moduleNameMapper: {
'^@/(.*)$': '<rootDir>/src/$1', // 类似 webpack.resolve.alias
},
transform: { // 类似 webpack.module.rules
'^.+\\.js$': '<rootDir>/node_modules/babel-jest',
'.*\\.(vue)$': '<rootDir>/node_modules/vue-jest',
},
setupFiles: ['<rootD