gpt4 book ai didi

msbuild - 如何在TeamCity中运行OpenCover + NUnit,而又不运行两次所有单元测试?

转载 作者:行者123 更新时间:2023-12-04 18:11:56 25 4
gpt4 key购买 nike

我在MSBuild脚本中设置了OpenCover,设置了ReportGenerator,并将其作为工件输出,并具有一个自定义选项卡-所有这些都很好用。这是我的MSBuild目标:

<Target Name="Test">

<!-- Check Code Coverage -->
<Exec Command="..\..\tools\OpenCover.4.0.519\OpenCover.Console.exe -register:user -target:..\..\tools\NUnit\nunit-console.exe -targetargs:&quot;$(TestAssemblies) /xml=NUnitReport.xml /noshadow&quot; -filter:&quot;+[HelloWorld.Mvc3UI*]* -[HelloWorld.Mvc3UI.UnitTests*]*&quot; -output:OpenCoverReport.xml"></Exec>

<!-- Format Code Coverage Report -->
<Exec Command="..\..\tools\ReportGenerator.1.5.0.0\ReportGenerator.exe OpenCoverReport.xml OpenCoverReport"></Exec>

</Target>

但是,为了运行OpenCover,它将附加到NUnit运行器以生成报告,该报告又将运行所有单元测试。尽管这可以为单元测试生成xml输出,但是我还没有找到一个xsl文件来生成与TeamCity 7.1内置的报告一样好的报告,更不用说过滤和搜索功能了。

但是,如果我使用内置的NUnit运行器(显然是在TeamCity中获得单元测试报告的唯一方法)在TeamCity中启用报告,它将重新运行单元测试以生成其报告。

尽管所有这些工作都有效,但我的问题是,是否有一种方法无需两次运行所有单元测试就可以获取两个报告?具体来说,OpenCover是否可以在不运行NUnit测试的情况下生成其报告,或者TeamCity是否可以在不运行单元测试的情况下生成其报告?

请注意,这是一个ASP.NET MVC3应用程序,并且OpenCover文档没有指定如何附加ASP.NET或什至可以附加,但很明显,它需要附加可执行文件。另请注意,如果有问题,我将使用NUnit 2.6.1。

最佳答案

您可以使用“构建功能”导入NUnit xml报告,如下图所示:

关于msbuild - 如何在TeamCity中运行OpenCover + NUnit,而又不运行两次所有单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12058935/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com