您的当前位置:首页vue-cli3 karma单元测试的实现

vue-cli3 karma单元测试的实现

2020-11-27 来源:乌哈旅游

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 即可

参考

Testing Single-File Components with Karma

显示全文