2010-11-01 168 views

回答

3

曾使用這兩種工具,它們都工作幾乎相同的方式。您運行測試,然後查看報告。這兩種工具都提供了代碼突出顯示,哪些代碼行覆蓋了哪些代碼,哪些代碼行不覆蓋。 MsTest在信息方面沒有提供太多內容,但NCover提供了大量的HTML報告,並且可以隨着時間推移覆蓋代碼的覆蓋範圍。這些事情可能會有所幫助。

現在的差異。 MsTest覆蓋率工具確實只能用於MsTest單元測試。它不能輕鬆覆蓋使用IDE中的NUnit(或其他測試框架)編寫的測試。它可以完成,但需要一些時間,並且需要從命令行調用覆蓋率工具並手動檢測程序集。再次,它可以完成,但不是很容易,特別是對於初學者。 NCover更加靈活,可以在大多數測試框架中運行。另外,我發現使用自動構建服務器運行NCover會更容易。我從來沒有在CruiseControl中自動運行MsTest覆蓋率,但我猜測MS使它在Team Foundation Server中工作。

+0

酷馬修,你提到的比較,你可以提供一些出版文件,以便我可以進一步自學。 – George2 2010-11-01 03:03:18

+2

我很難找到兩種工具的直接比較,但這裏有一篇文章:http://gojisoft.com/blog/2010/01/27/code-coverage-for-net-compared/ – 2010-11-02 02:12:41

+0

謝謝,問題回答! – George2 2010-11-02 09:05:59

1

只是一對夫婦的小票,可能會有所幫助:

  1. 不幸的是,NCover的免費版本不支持.Net 4.0運行時
  2. 如果您有興趣使用CruiseControl intgration工作。 Net,您可以使用Gallio測試運行器來運行MSTest測試。看到 Gallio: Cannot run tests because the MSTest executable was not found
+0

謝謝伊萬!與NCover相比,VSTS內置工具有哪些缺點? – George2 2010-11-01 12:18:57