将InspectCode(Resharper)和OpenCover代码覆盖率报告合并到Sonar Qube Build中

时间:2016-02-17 05:43:34

标签: sonarqube teamcity resharper jetbrains-ide opencover

我们正在使用InspectCode- Resharper插件生成C#代码分析报告和Opencover for Code覆盖率报告(单元测试用例)。

这两个命令在Teamcity中一个接一个地运行。当我们生成Resharper分析报告并推送到声纳qube时,我们会松开代码覆盖率报告。

问题是如何将两个命令合并到一个脚本中或合并两个命令的输出。

这些是我们执行的命令。

OpenCover命令:

getItemViewType(),

InspectCode Comamnd

@Override
    public int getItemViewType(int position) {
        // Just as an example, return 0 or 2 depending on position
        // Note that unlike in ListView adapters, types don't have to be contiguous
        return position % 2 * 2;
    }

    @Override
    public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
         switch (viewType) {
             case 0: return new ViewHolder0(...);
             case 2: return new ViewHolder2(...);
             ...
         }

最终解决方案:

F:\BuildSystem\Dependencies\Sonar\OpenCover\4.5.3522\OpenCover.Console.exe -register:user -target:F:\BuildSystem\Dependencies\NUnit\nunit-console-x86.exe -targetargs:"F:\Builds\Sonar\Helix_Sonar_EsdPaymentsBpay\UnitTests\bin\Debug\DummyProject.UnitTests.dll /noshadow" -excludebyattribute:"*.ExcludeFromCodeCoverage*|*.GeneratedCode*" -filter:"+[DummyProject*]* +[App.*]* -[*Tests*]*" -hideskipped:All -mergebyhash -output:coverage-report.xml

1 个答案:

答案 0 :(得分:2)

您需要将OpenCover输出文件上传到声纳,例如

/d:sonar.cs.opencover.reportsPaths="coverage-report.xml"
相关问题