MSBuild批量输出参数

时间:2012-09-17 07:58:58

标签: batch-file msbuild

我像这样批量调用NUnit:

<MSBuild.ExtensionPack.CodeQuality.NUnit
            ToolPath="$(NUnitToolPath)"
            Assemblies="%(TestOutputFiles.FullPath)"
            ContinueOnError="True"
            Use32Bit="True"
            OutputXmlFile="$(LogDirectory)%(TestOutputFiles.Filename).$(ActiveConfigurationName).xml">          
    <Output TaskParameter="Failures" PropertyName="$(ResultFailures)"/>
    <Output TaskParameter="Errors" PropertyName="$(ResultErrors)"/>
</MSBuild.ExtensionPack.CodeQuality.NUnit>

对于TestOutputFiles.FullPath中的每个程序集,调用NUnit并生成OutputXmlFile,但是,我想创建一个摘要,说明最后在ALL程序集中有多少个测试用例失败。

所以我使用ContinueOnError并保存Tasks的输出参数。但是,我只设法将它们保存到属性中,每次调用任务时都会被覆盖(这是批处理......)

你知道如何将它们保存到某种阵列中吗?一个项目组可能?

1 个答案:

答案 0 :(得分:2)

只需更改ItemName

的PropertyName属性即可
<Output TaskParameter="Failures" ItemName="ResultFailures"/>
<Output TaskParameter="Errors" ItemName="ResultErrors"/>

请记住,ItemName和PropertyName是互斥的。你不能同时指定