我们正在设置TeamCity,以便使用node和karma运行我们的jasmine测试。
测试运行良好,并在TeamCity的“测试”选项卡下报告结果。
然而,我们希望在TeamCity中报告代码覆盖率(甚至在级别上设置构建失败条件)。
我已经安装了karma-coverage模块
npm install karma-coverage --save-dev并尝试在karma.conf.js中配置它,方法是添加
preprocessors: {
'myProject/Scripts/app/**/*.js': 'coverage'
},
reporters: ['progress', 'coverage'],运行karma时,不会报告任何错误,并且会在coverage文件夹下创建许多文件,其中包括一个格式非常好的index.html代码覆盖率报告
但是在TeamCity中并没有什么新的东西。没有"Code Coverage“选项卡。
如何配置karma以生成在TeamCity中显示的报告?
也许我可以使用set coverageReporter来做一些适当的事情,但是什么呢?此设置不会产生任何影响:
coverageReporter: {
type : 'html',
dir : 'coverage/'
},奖励问题:如何在karma报告的代码覆盖率上设置构建失败条件?
发布于 2013-10-29 16:48:33
要让TeamCity识别您的覆盖率报告,最简单的方法是输出一个构建工件,其中包含漂亮的html覆盖率报告。
编辑构建的配置设置,并在工件路径下添加如下内容:
coverage/** => coverage.zip如果TeamCity在根目录中找到coverage.zip文件,它将识别index.html工件,并将代码覆盖率选项卡添加到每个构建中。
来源:https://confluence.jetbrains.com/pages/viewpage.action?pageId=74847395#HowTo...-ImportcoverageresultsinTeamCity (Teamcity version9.x)
发布于 2016-09-27 03:28:35
在我的例子中,报告被成功地生成到coverage.zip中,但是在构建报告中看不到代码覆盖率选项卡。
我必须在项目设置中手动添加报告选项卡,并提供index.html文件的完整路径

发布于 2013-11-26 23:46:47
不知道序列是否重要,是否应该在预处理器条目中使用[]括号?
尝试以下操作:
reporters: ['progress', 'coverage'],
preprocessors: {
'myProject/Scripts/app/**/*.js': ['coverage']
},https://stackoverflow.com/questions/19266655
复制相似问题