使用VS集成工具(如Testdriven.net)或使用像Icarus或NUnit GUI這樣的GUI測試運行器之間有什麼區別?Gallio Icarus與Testdriven.net
你喜歡什麼?爲什麼?
到目前爲止,我發現報告在Icarus中比在td.net中更好,它只具有命令行輸出。 然而,td.net使用起來更快,我可以更輕鬆地執行單個測試,而無需先取消其他測試。 NCover集成也非常好。
使用VS集成工具(如Testdriven.net)或使用像Icarus或NUnit GUI這樣的GUI測試運行器之間有什麼區別?Gallio Icarus與Testdriven.net
你喜歡什麼?爲什麼?
到目前爲止,我發現報告在Icarus中比在td.net中更好,它只具有命令行輸出。 然而,td.net使用起來更快,我可以更輕鬆地執行單個測試,而無需先取消其他測試。 NCover集成也非常好。
伊卡洛斯有一個很好的功能,讓我使用它。這是測試的自動重新加載和重新運行。
我把Icarus盤旋在左邊的監視器上。每次我在Visual Studio中構建時,Icarus都會重新加載程序集並運行所有測試。這有點像Resharper解決方案分析的即時反饋,除了測試而不是語法。運行測試是自動的,並且似乎不會影響Visual Studio的性能(可能是B/C Icarus是它自己的進程,而不是託管在IDE中)。
要啓用此配置,請轉至Icarus-> Options-> Test Explorer。選中「始終重新加載文件」和「重新加載後運行測試」。
您是否擁有持續集成服務器(如構建服務器,但運行單元測試)?
如果是這樣,你可以設置gallio來運行你的單元測試,並在那裏有所有的報告信息,同時允許開發人員在工作時使用更快的反饋。
如果沒有選項,我更喜歡像Testdrvien那樣集成到IDE中的東西。當重構一段代碼或在TDD下開發新的東西時,即時反饋非常有用。此外,如果您沒有在單點(例如CI服務器)上進行健全性檢查,您將需要儘可能多的眼睛,因爲您可以在單元測試中找到多少眼睛。開發人員傾向於使用任何最簡單的方法,通常,集成測試套件比單獨的組件更容易。
我是個人開發者,所以使用ci服務器對我來說並不是必需的。其實我有一個,只是用它作爲度量標準等等(當然也有趣) – 2009-09-01 14:59:30
@Johannes Rudolph如果一個CI服務器過度殺毒,你仍然可以建立腳本。無論何時您需要度量標準,Rake都可以輕鬆地從命令行進行設置和運行。這裏是我從Rake開始的資源。 http://www.tobinharris.com/past/2008/11/4/getting-started-with-rake-on-net/ – 2009-09-01 15:49:38
是的,我也是Digg的。唉,我的問題wether td.Net提供了任何好處。 – 2009-09-07 15:47:42
在TD.Net的防禦中,構建作爲正在運行的單元測試的一部分運行,並且不佔用屏幕空間。 – GregC 2011-04-13 16:09:06
在Visual Studio中編輯代碼時,真正很酷的功能是重新運行相關的單元測試。但是,你如何定義「相關?」 – GregC 2011-04-13 16:10:37