2011-09-08 6 views
3

私はこのnantタスクを自分のnunitテストに使用していました。TestCaseで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を個別に指定する必要があります。つまり、私はそれを私のプロジェクトすべてで編集しなくても使うことはできません。私は、私のソリューションの1つにテストプロジェクトを追加するたびに編集する必要があります。

両方の世界を最大限に活用する方法はありますか?

答えて

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> 
+0

感謝を。それはまさに私が探していたものです。 – scott

関連する問題