2010-08-19 105 views
3

我使用VS2008專業版,因此​​我的C#項目包括了一堆寫在MS單元測試的捆綁的單元測試框架(對不起,我不知道它的正式名稱是什麼!)。我希望能夠運行這些單元測試作爲我的構建過程的一部分。自動單元測試與NANT和VS2008在生成過程中

是否有可能獲得南特自動運行生成過程中,這些單元測試?

回答

2

爲我工作的解決方案如下:

<exec program ="C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\MSTest.exe" > 
    <arg value="/testcontainer:${Test_dll}"/> 
    <arg value="/resultsfile:C:\Test\TestResults.trx"/> 
</exec> 

這僅僅是基本的惡性元件,儘管它是可擴展的MSTest的命令行將使。

0

據calld MSTest的。您可以直接使用exec任務來直接調用可執行文件:

(更正舊版本的NAnt,但顯然沒有更多。See the accepted answer)。

<exec> 
    <executable>%VS_INSTALL%\Common7\IDE\MSTest.exe</executable> 
    <baseDirectory>PPRJECT LOCATION</baseDirectory> 
    <buildArgs>/testcontainer:TestDLLs /runconfig:localtestrun.Testrunconfig /resultsfile:testResults.trx</buildArgs> 
    <buildTimeoutSeconds>600</buildTimeoutSeconds> 
</exec> 

我很驚訝它沒有附帶內置的。

僅供參考任務這裏是MSTest Command-Line options列表。

注:這些選項是VS2010,可以通過在頁面上選擇正確的版本,查看其他VS版本的命令行選項

+0

Nant現在似乎已經死了,ms測試在開發時並不流行。 – Grzenio 2010-08-19 13:08:42

+2

我不同意,最近一次更新爲2天前(2010年8月17日)。我不認爲你真的可以說它'死了'! – 2010-08-19 13:28:10

+0

-1:此語法不再適用於最新版本的NAnt。請檢查接受的答案。 (這個答案確實有一個MSTest命令行選項的鏈接,我只是downvoted,以便在頂部顯示正確的XML構建語法) – Laoujin 2013-04-23 10:27:58