Karma Coverage似乎会生成子文件夹中的覆盖范围,其名称如下:PhantomJS 1.9.2 (Mac OS X)
,无论如何要告诉它在与Grunt结合使用时打开该子文件夹?
目前,必须转到目录中复制目录名称,并在打开localhost:5555
后将其粘贴,以便加载。
这可能不是什么大问题,但我正在努力削减复制和粘贴的步骤。
P.S。我已经在命令行中使用文本类型直接输出以便于访问,但我很乐意在需要时打开HTML覆盖率报告。
connect: {
coverage: {
options: {
open: true,
base: 'coverage/<<NEED TO GET THE DYNAMIC F>>',
port: 5555,
keepalive: true
}
}
}
unit_coverage: {
configFile: 'karma.conf.js',
autoWatch: false,
singleRun: true,
reporters: ['progress', 'coverage'],
preprocessors: {
'app/scripts/{,*/}*.js': ['coverage']
},
coverageReporter: {
reporters: [
{type : 'text'},
{type: 'html', dir: '/coverage'}
]
}
},
grunt.registerTask('coverage', [
'karma:html_coverage',
'connect:coverage'
]);
答案 0 :(得分:1)
我希望能够为Chrome打开最新版本的业力报道(我测试了两个浏览器,但遇到了Emma Gou提到的错误)。这是一个快速而肮脏的解决方案,依赖于grunt文件扩展返回匹配文件的排序数组。可以添加明确的排序。
open: {
server: {
path: 'http://localhost:<%= connect.options.port %>'
},
coverage: {
path: function () {
var reports = grunt.file.expand('coverage/Chrome*/index.html');
return reports[reports.length - 1].toString();
}
}
},
答案 1 :(得分:0)
根据 karma-runner 文档,您可以将 dir 指定为 coverageReporter ,它将用于存储生成的报告。< / p>