给出以下ant任务:
<apply executable="${mstest}" addsourcefile="false">
<arg value="/resultsfile:TestResults.trx" />
<arg value="/testsettings:ReleaseCodeCoverage.testsettings" />
<arg value="/detail:errormessage" />
<srcfile />
<fileset dir="bin/${buildType}">
<patternset>
<include name="*Tests.dll" />
</patternset>
</fileset>
</apply>
如何将前缀/TestContainer:
应用于<srcfile />
的内容?
MSTest使用分号而不是空格分隔开关名称,因此我不能将其作为<arg value="/TestContainer">
附加。我也按照建议here尝试了<srcfile prefix="/TestContainer:" />
,但我的版本(1.7)不支持此功能。
答案 0 :(得分:2)
这有点作弊,但您可以根据自己的情况进行调整。 apply
task有一个嵌套元素targetfile
,可以像srcfile
一样使用 - 放在需要的命令参数之间。 targetfile的值是使用mapper元素从srcfile派生的。所以你可以附上前缀。也许是这样的事情:
<apply executable="${mstest}" addsourcefile="false" relative="true">
<arg value="/resultsfile:TestResults.trx" />
<arg value="/testsettings:ReleaseCodeCoverage.testsettings" />
<arg value="/detail:errormessage" />
<targetfile/>
<fileset dir="bin/${buildType}">
<patternset>
<include name="*Tests.dll" />
</patternset>
</fileset>
<mapper type="regexp" from="(.*)" to="/TestContainer:bin/${buildType}/\1" />
</apply>
请注意使用relative
属性,否则路径会在目标'filename'前面加前缀。