获取统计信息以显示在TC中

时间:2012-06-05 19:21:51

标签: tfs continuous-integration teamcity code-coverage ncover

我已经使用我的sln文件设置了teamcity并获得了单元测试以显示teamcity所拥有的CppUnit plugin。我在TeamCity UI中获得了测试结果。

现在我正在努力获取趋势报告以显示我的单元测试和代码覆盖率。

截至代码覆盖率,我们正在使用vsinstr.exe和vsperfmon.exe来生成XML文件。

我不太确定应该采取哪些步骤来制作趋势报告和代码覆盖率(不那么重要)。

我已经看过this post,但答案似乎需要编辑构建脚本,因为我正在通过MSBuild和.sln文件进行构建,所以我认为这对我的案例不起作用,测试正在通过该构建进行。

所以基本上我正试图让“统计”标签出现,我不知道从哪里开始。

1 个答案:

答案 0 :(得分:1)

只需在构建配置中添加简单的Powershell步骤即可。像这样:

function TeamCity-SetBuildStatistic([string]$key, [string]$value) {
    Write-Output "##teamcity[buildStatisticValue key='$key' value='$value']"
}

$outputFile = 'MetricsResults.xml'

$xml = [xml] (Get-Content $outputFile)

$metrics = $xml.CodeMetricsReport.Targets.Target[0].Modules.Module.Metrics
$metrics.Metric 
  | foreach { TeamCity-SetBuildStatistic "$($_.Name)" $_.Value.Replace(',', '') }

它使用FxCop Metrics的XML输出。您必须更新实际架构的脚本。