karma mocha 对vue组件单元测试不生效,是@vue/cli-service版本变化导致的

49 篇文章 0 订阅

注意当前时间节点 2021.12.30


注意对比学习:

注意看package.json里面的"@vue/cli-service"包版本号
我的版本是"@vue/cli-service": "~4.5.0"会出问题
如果版本是"@vue/cli-service": "~3.0.0",则不会出现问题
原因是@vue/cli-service的版本变化,导致webpack的配置变化而造成问题的

假设1:"@vue/cli-service": "~4.5.0"

解决办法:karma.conf.js文件写法如下

var webpackConfig = require('@vue/cli-service/webpack.config.js')
// 使用delete操作符,删除对象中的某一项
delete webpackConfig.entry // 第一句:删除入口
delete webpackConfig.optimization // 第二句:删除优化配置
webpackConfig.output =  { // 第二句:重写输出配置
    filename: "[name].js", // 输出 index.js 和 utils.js
}
console.log("webpackConfig:",webpackConfig);

module.exports = function(config) {
  config.set({
    basePath: '.',
    frameworks: ['mocha','chai'],
    files: [
      'test/*.spec.js'
    ],
    preprocessors: {
      'test/*.spec.js': ['webpack', 'sourcemap']
    },
    exclude: [
    ],
    webpack: webpackConfig,
    webpackMiddleware:{
      noInfo:false
    },
    reporters: ['spec', 'coverage'],
    coverageReporter: {
      dir: './coverage',
      reporters: [
        { type: 'lcov', subdir: '.' },
        { type: 'text-summary' }
      ]
    },
    port: 9876,
    colors: true,logLevel: config.LOG_INFO,
    autoWatch: true,
    browsers: ['ChromeHeadless'],
    singleRun: true,
    concurrency: Infinity
  })
}

控制台正常输出:
在这里插入图片描述
在这里插入图片描述

控制台不正常输出:
在这里插入图片描述
在这里插入图片描述

如果出现这种情况,采用文章开头方法解决即可,主要是webpack配置导致的问题。

如果有问题,可以加我微信号yizheng369问我

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值