2008-09-05 18 views
6

Son zamanlarda, NUnit'in (v2.4.8) son kararlı sürümü ile derlenen bazı birim testlerini herhangi bir başarıya gerek olmadan çalıştırmak için NAnt (beta 0.86.2962.0) kullanmayı denedim.Nntn 0.86 beta ile NUnit v2.4.8 testleri nasıl kullanılır?

[nunit2] Assembly "C: \ Dev \ mySample bin \ testlerinin \ \ My.Sample.Tests.dll"

alıyorum hata şudur hiçbir testleri içerir.

Elbette, derleme, NUnit one, TestDriven veya Resharper gibi herhangi bir koşucudan çalışabileceğim testleri içerir. < nunit2> görevini kullanmak istiyorum ve doğrudan < exec> birini değil, montaj sürümlerini bağlamak için app.config dosyalarını kullanmanın hala mümkün olup olmadığını merak ediyorum.

cevap

10

Nedenini hatırlayamıyorum, ancak < nunit2> görevini kullanmayı bıraktım ve < exec> task and nunit-console.exe programını mutlu bir şekilde kullanıyorum. Eğer yardımcı olursa, burada NUnit ve FxCop çalıştıran test hedefim. Yürütülebilirler Windows yolunda değilse, bunları atladığını unutmayın.

<target name="test" description="Run unit tests" depends="build"> 
    <property name="windows-path" value="${string::to-lower(environment::get-variable('PATH'))}"/> 
    <property name="nunit-in-path" 
     value="${string::contains(windows-path, 'nunit')}"/> 
    <echo message="Tests skipped because no NUnit folder was found in the Windows path." 
     unless="${nunit-in-path}"/> 
    <exec program="nunit-console.exe" if="${nunit-in-path}"> 
     <arg file="../MyProject/MyProjectTest.nunit"/> 
    </exec> 
    <property name="fxcop-in-path" 
     value="${string::contains(windows-path, 'fxcop')}"/> 
    <echo message="FxCop skipped because no FxCop folder was found in the Windows path." 
     unless="${fxcop-in-path}"/> 
    <fxcop projectFile="../MyProject/MyProject.fxcop" directOutputToConsole="true" 
     failOnAnalysisError="true" if="${fxcop-in-path}"/> 
</target> 
+1

Bu ikinciye ... Eskiden çalışmak için Nunit2 görevini denemek ve uygulamak için app.config sihrini kullanmayı denedim, ancak bir süre vazgeçtim ve şimdi yukarıda anlatıldığı gibi yürütme görevini kullanıyorum. –

+2

Don, Andy: yerine görevini kullanmanın iyi bir nedeni olduğuna inanıyorum, eğer test paketiniz [ExpectedException] ile işaretlenmiş testlere sahipse ve istisna aslında atılmışsa, NAnt görevi başarı yerine başarısızlık olarak rapor eder. yapı başarısız olur. Şu an bu problemi yaşıyorum. Ben kullanarak çözeceğim, ama elbette başka bir geçici çözüm önerisi için teşekkür ederiz. – azheglov

+0

HAYIR guys, birim test dllimi arg dosyasında kullanmaya çalışıyorum. Ama hangi testlerin başarısız olduğunu söylemiyor. Arg etiketinin hatasız veya başarısız olması nedeniyle, testlerin başarısız olup olmadığını nasıl öğrenirsiniz? – alice7

İlgili konular