在TeamCity上为Karmaconfiguration代码覆盖率报告

我们正在build立TeamCity,使用节点和业力运行我们的茉莉花testing。

testing运行良好,结果在TeamCity的“testing”标签下报告。

不过,我们希望在TeamCity中报告代码覆盖率(甚至可以在关卡上设置Build Failure Conditions)。

我已经安装了业力覆盖模块

npm install karma-coverage --save-dev 

并尝试通过添加在karma.conf.jsconfiguration它

 preprocessors: { 'myProject/Scripts/app/**/*.js': 'coverage' }, reporters: ['progress', 'coverage'], 

当运行karma时,没有报告错误,并且在文件夹coverage创build了大量文件,其中包括index.html格式良好的代码覆盖率报告

但在TeamCity中没有新的东西出现。 没有“代码覆盖”选项卡。

如何configuration业力产生在TeamCity中显示的报告?

也许我可以使用设置coverageReporter到适当的东西,但什么? 这个设置没有任何区别:

 coverageReporter: { type : 'html', dir : 'coverage/' }, 

奖金问题:如何设置业障报告代码覆盖率的build设失败条件?

让TeamCity识别您的覆盖率报告的最简单的方法是输出一个包含那个很好的html覆盖率报告的构build工件。

编辑您的构build的configuration设置,并在“工件path”下添加如下内容:

 coverage/** => coverage.zip 

如果TeamCity在根目录中findindex.html文件,并且会为每个版本添加代码覆盖选项卡,TeamCity将识别coverage.zip工件。

资料来源: https ://confluence.jetbrains.com/pages/viewpage.action ? pageId = 74847395#HowTo…-ImportcoverageresultsinTeamCity(Teamcity version 9.x)

在我的情况下,报告已成功生成到coverage.zip ,但代码覆盖选项卡在构build报告中不可见。

我必须手动添加项目设置中的报告选项卡,并提供index.html文件的完整path

在这里输入图像描述

不知道,如果顺序很重要,不应该在预处理器条目中使用[]括号?

尝试以下操作:

 reporters: ['progress', 'coverage'], preprocessors: { 'myProject/Scripts/app/**/*.js': ['coverage'] },