爲了切切實實,TeamCity .NET NUnitLauncher能夠處理微軟的csproj文件嗎?TeamCity的.NET NUnitaddin可以處理csproj文件嗎?
我問這個問題,因爲以下幾點。
我有一個NANT構建腳本。在這個腳本中,我有一些使用nunit-console.exe(隨NUnit v2.5.2發貨)的測試。
在我的nant創建文件測試的一個例子是:
<target name="x.Commons.Tests" depends="xCore">
<exec program="${nunit-console.exe}" commandline="${nunit-console.args} Core\x.Commons.Tests\x.Commons.Tests.csproj" failonerror="${nunit-console.failonerror}"/>
</target>
FailOnError設置爲false,和NUnit的-console.args被設置爲 '/ NOLOGO'。
當我在本地機器上運行這些測試時,我得到測試輸出。但是,當我指示TeamCity構建我的NAnt構建文件並指示它處理測試目標時,我沒有向TeamCity輸出測試結果。我可以在日誌中看到nunit-colsole.exe正在生成測試結果輸出,但是我在TeamCity儀表板中沒有看到這一點。
閱讀後我發現一些文章指出需要額外的步驟才能將此輸入輸入到TeamCity中。因此,我修改了我的測試:
<target name="x.Configuration.Tests" depends="xCore">
<mkdir dir="C:\Tools\NUnit\bin\net-2.0\addins"/>
<copy file="${teamcity.dotnet.nunitaddin}-2.5.0.dll" todir="C:\Tools\NUnit\bin\net-2.0\addins"/>
<copy file="${teamcity.dotnet.nunitaddin}-2.5.0.pdb" todir="C:\Tools\NUnit\bin\net-2.0\addins"/>
<exec program="${nunit-console.exe}" commandline="${nunit-console.args} Core\x.Configuration.Tests\x.Configuration.Tests.csproj" failonerror="${nunit-console.failonerror}"/>
</target>
請注意,我還確保了標籤包含「加載項」的條目。
但是,和以前一樣,我可以看到測試正在運行,因爲nunit-console.exe在日誌中顯示其結果,但Im沒有得到TeamCity的輸出。
我的問題的答案,或任何幫助,將不勝感激!
嗨尤金, 我安裝了TeamCity v2.5.4,我發現它沒有NUnit 2.5.2的nunitaddin。這是不尋常的,因爲NUnit v2.5.2已經存在了一年多了!我正在下載TeamCity 2.5.5,希望它會有2.5.2的nunitaddin。 但是,在您的建議之後,我將NUnit的版本更改爲2.5.0,我很高興地說我的測試結果顯示在TeamCity中! 我很感激幫助! –
不錯!似乎你將TeamCity 4.5.x稱爲「TeamCity v2.5.x」。據我所知,NUnit 2.5.2於2009年8月10日發佈。http://nunit.org/index.php?p=releaseNotes&r=2.5.2 –
尤金,你是對的,NUnit 2.5.2是09年8月發佈。我一直對所有這些不同產品的版本感到困惑!感謝您的幫助並保持JetBrains的良好工作;) –