我正在使用这个nant任务进行我的nunit测试。
<nunit2 failonerror="false">
<formatter usefile="true"
outputdir="build"
type="Xml"
extension=".xml"/>
<test>
<assemblies>
<include name="Build/*.Tests.dll"/>
</assemblies>
<references >
<include name="Tools/**/*.dll"/>
<include name="Build/*.dll"/>
</references>
</test>
</nunit2>
它有很好的好处,我可以在多个项目中使用它而不会改变任何东西。问题是它似乎忽略了我的一些测试中的TestCase
和ExpectectException
属性导致它们失败。我已经看到了使用exec
任务调用nunit-console.exe的建议,但是我必须单独指定所有测试dll。这意味着我无法再在所有项目中使用它而无需编辑它。每当我将测试项目添加到我的解决方案中时,我都必须编辑它。
有没有办法让两全其美?
答案 0 :(得分:2)
您可以使用<foreach>
来运行测试:
<foreach item="File" property="test-assembly">
<in>
<items>
<include name="${binaries-dir}/*" />
</items>
</in>
<do>
<exec program="${nunit.exe}" workingdir="${binaries-dir}"
managed="true">
<arg value="/nologo" />
<arg value="${test-assembly}" />
</exec>
</do>
</foreach>