CruiseControl.NET Visual Studio测试用例不在控制面板上显示
问题描述:
我在项目构建后使用CruiseControl.NET运行Visual Studio测试用例。在原始XML日志,我可以看到它在运行测试用例和说法,其中通过了,哪些失败了,但在仪表盘的CruiseControl所有它说的是:CruiseControl.NET Visual Studio测试用例不在控制面板上显示
9个项目在所有:-) Juchuu没有警告建成! !
这里是我的项目块的样子:
<project name="projectname" queue="queuename" queuePriority="2">
<workingDirectory>C:\Build</workingDirectory>
<category>categoryname</category>
<webURL>http://myurl/ViewProjectReport.aspx</webURL>
<triggers>
<intervalTrigger seconds="60" />
</triggers>
<modificationDelaySeconds>60</modificationDelaySeconds>
≻
<tasks>
<msbuild>
<executable>C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe</executable>
<workingDirectory>C:\mypath</workingDirectory>
<projectFile>project.sln</projectFile>
<buildArgs>/v:quiet /noconlog /p:Configuration=Debug</buildArgs>
<targets>Build</targets>
<timeout>900</timeout>
<logger>C:\Program Files\CruiseControl.NET\server\Rodemeyer.MsBuildToCCnet.dll</logger>
</msbuild>
<exec>
<executable>C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\mstest.exe</executable>
<baseDirectory>C:\Build\Test\TestCases\</baseDirectory>
<buildArgs>/testcontainer:testproject\bin\debug\testproject.dll /runconfig:localtestrun.Testrunconfig</buildArgs>
<buildTimeoutSeconds>900</buildTimeoutSeconds>
</exec>
</tasks>
<publishers>
<xmllogger logDir="C:\Program Files\CruiseControl.NET\Logs\Navtrak\H4CommandProcess\" />
</publishers>
</project>
我如何获得通过/失败测试案例CruiseControl的仪表盘页面上显示为特定的构建?
感谢, 贾斯汀
答
请参阅本文如何让MSTest的结果出现在CruiseControl.Net一些提示:
http://confluence.public.thoughtworks.org/display/CCNET/Using+CruiseControl.NET+with+MSTest
从本质上讲,你需要做的是:
- 获取MSTest以将其测试结果保存到xml(.trx)文件(您的原始构建输出可能会以测试格式显示测试结果,ho Wever CruiseControl.net需要xml格式的结果)
- 获取CruiseControl.Net将此xml文件合并到您的巡航控件构建日志中。
- 添加额外的构建报告,使用XSLT将xml测试结果转换为漂亮的html。
上面的文章更详细地介绍了如何做到这一点,以及一些额外的考虑因素(如删除旧的测试结果)。
此外,我注意到你正在使用Visual Studio 2009 - 上面的文章没有强调的是,当你设置你的仪表板来显示MSTest结果时,你需要确保你使用VS2009特定CruiseControl.Net中的xslt directroy,因为标准的不会在仪表板上显示任何结果。