我正在尝试将代码覆盖率报告器集成到我的业力测试中。
我在配置中设置了以下更改:
coverageIstanbulReporter: {
reports: ['html', 'lcovonly', 'text-summary'],
// base output directory. If you include %browser% in the path it will be replaced with the karma browser name
dir: path.join(__dirname, 'coverage'),
// if using webpack and pre-loaders, work around webpack breaking the source path
fixWebpackSourcePaths: true,
},
reporters: config.coverage ? ['kjhtml', 'dots', 'coverage-istanbul'] : ['kjhtml', 'dots'],
但不幸的是,它没有创建coverage
文件夹。
我在这里做错了什么?请注意,我正在调用karma start ./karma.conf.js --coverage
,甚至在没有配置覆盖率参数的情况下进行了检查。
答案 0 :(得分:1)
鉴于您在Chrome控制台上有text-summary
个输出,并且您已经为指定的报告者提供了 base 目录,您只需要明确告诉记者哪个子目录应该用于不同的报告类型:
尝试在coverageIstanbulReporter
下(来自repo的自述文件)添加此条目:
// Most reporters accept additional config options. You can pass these through the `report-config` option
'report-config': {
// all options available at: https://github.com/istanbuljs/istanbul-reports/blob/590e6b0089f67b723a1fdf57bc7ccc080ff189d7/lib/html/index.js#L135-L137
html: {
// outputs the report in ./coverage/html
subdir: 'html'
}
}