我正在尝试使用业力测试我的文件array.js,该文件只有36行,但是覆盖率报告显示“ Lines ....”(请参阅​​我上传的png),这些值的含义是什么,为什么它与我的测试代码不匹配?是我使用es6的原因吗?
 如何获得正确的报告?

业力配置

const webpackConfig = {
  devtool: 'inline-source-map',
  module: {
    rules: [
      {
        test: /\.(js|jsx)$/,
        exclude: /(node_modules|vendor)/,
        loader: 'babel-loader'
      }
    ]
  }
};

module.exports = function (config) {
  config.set({
    basePath: '../',
    plugins: [
      'karma-webpack',
      'karma-mocha',
      'karma-phantomjs-launcher',
      'karma-verbose-reporter',
      'karma-coverage'
    ],
    webpack: webpackConfig,
    webpackServer: {
      noInfo: true
    },
    frameworks: ['mocha'],
    files: [
      'test/**/*.js',
      'src/**/*.js'
    ],
    preprocessors: {
      'test/**/*.js': ['webpack'],
      'src/**/*.js': ['webpack', 'coverage']
    },
    reporters: ['verbose', 'coverage'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: true,
    browsers: ['PhantomJS'],
    concurrency: Infinity,
    coverageReporter: {
      includeAllSources: true,
      dir: 'coverage/',
      reporters: [
        {type: "html", subdir: "html"},
        {type: 'text-summary'}
      ]
    }
  });
};


javascript -  karma 报应报告混淆-LMLPHP

javascript -  karma 报应报告混淆-LMLPHP

最佳答案

业力会从您的项目中执行您测试范围内的所有文件。您得到的报告是针对项目中所有文件的。以下是每个值的说明:

语句:程序中的每个语句是否都已执行?

分支:是否已执行每个控制结构(例如if和case语句中)的每个分支(也称为DD路径)?例如,给定一个if语句,是否同时执行了true和false分支?换句话说,程序中的每个边都执行了吗?

函数:是否已调用程序中的每个函数(或子例程)?

行:源文件中的每个可执行行是否都已执行?

详细说明:
https://en.wikipedia.org/wiki/Code_coverage

07-26 08:57
查看更多