moxie 2019-01-18
Karma
Karma是一个测试工具,能让你的代码在浏览器环境下测试。代码可能是设计在浏览器端执行的,在node环境下测试可能有些bug暴露不出来(比如要做样式的测试),如果你的代码只会运行在node端,那么你不需要用karma。
vue-cli3 结合karma
经过查找搜索到vue-cli-plugin-unit-karma插件, 集成vue-cli3与karma,但是结果不那么完美,执行的时候还是报错。
不过功夫不负有心人,终于找到解决方法,步骤如下
安装依赖
npm install --save-dev @vue/test-utils karma karma-chrome-launcher karma-mocha karma-sourcemap-loader karma-spec-reporter karma-webpack mocha
在package.json层创建karma.conf.js (注意,是conf,不是config!!!)
内容如下
var webpackConfig = require('@vue/cli-service/webpack.config.js') module.exports = function (config) { config.set({ frameworks: ['mocha'], files: [ 'tests/**/*.spec.js' //tests目录下,所有.spce.js结尾的测试文件 ], preprocessors: { '**/*.spec.js': ['webpack', 'sourcemap'] }, webpack: webpackConfig, reporters: ['spec'], browsers: ['ChromeHeadless'] }) }
package.json内增加script命令
"test": "karma start"
最后执行 npm run test 即可
参考