从MSBuild中运行的MSTest捕获错误

时间:2012-01-24 20:17:14

标签: msbuild mstest

我这样称呼MSTest:

<Target Name='UnitTests'>
    <CallTarget Targets="BeforeUnitTests" />
        <Exec Command='"$(VS90COMNTOOLS)..\IDE\mstest.exe"  /testmetadata:$(SourceCodeRootFolder)ASA.File.Processing.vsmdi  /testlist:buildtests' />
    <CallTarget Targets="AfterUnitTests" />
</Target>

它正在运行,但无论是成功还是失败,都不会将错误写入MSBuild错误文件。我正在使用这些参数运行MSBuild:

/fl /flp:v=detailed;logfile=Errors.txt;errorsonly 

如果Errors.txt文件中存在错误,我会设置电子邮件给我们的团队发送电子邮件。

1 个答案:

答案 0 :(得分:0)

除非MSTest程序本身失败,否则您不会在MSBuild日志文件中出现错误,至少从构建流的测试部分得到错误。

MSTest选项之一是将结果发布到TFS;你应该能够在那里使用标准通知设置让你的队友知道发生了什么。或者您可以在MSTest调用中使用resultfile参数,并根据您在文件中找到的内容进行解析/发布。

我们使用Codeplex项目Trx2Html将结果发布到每个人都可以访问的内部网站。