2010-05-29 110 views
8

我在C#.NET上有一個簡單的項目,並將它寫在Visual Studio 2010中。我是C#和Visual Studio中的新手。Visual Studio 2010中的代碼覆蓋率測試?怎麼樣?

我寫了一些單元測試,他們通過了,但我怎麼測試代碼覆蓋?

在此先感謝。

+0

你正在使用什麼測試框架? – 2010-05-29 20:30:29

+0

那麼,我使用VS2010中的「創建單元測試」菜單創建了單元測試。 我應該使用NUnit嗎? – George 2010-05-29 20:33:21

+0

我個人使用NUnit,但這只是我的選擇。我發現MSTest用戶體驗有點混亂。我會給你一個適用於NUnit和MSTest的答案。 :) – 2010-05-29 20:40:39

回答

5

我使用NUnit作爲我的測試框架,並使用TestDriven.Net來運行VS2010的代碼覆蓋率。這也適用於MSTest,即Visual Studio測試。首先,你需要得到TestDriven.Net的保持:

http://www.testdriven.net/download.aspx

一旦安裝了TestDriven.Net,你會得到一些額外的項目添加到您的解決方案資源管理器右鍵菜單例如右鍵單擊一個項目,並在「Test With」下面有一些TestDriven選項。其中一個選項是「覆蓋率」,它將運行帶代碼覆蓋率的單元測試,然後顯示代碼覆蓋率結果窗口。工作得很好。

更新

當然你只能得到代碼覆蓋率在Visual Studio 2010中,如果你有一個真正支持它即高級版或旗艦版的一個版本。

+0

請注意,VS/MSTest *覆蓋*工具不包含在所有VS SKU中(或者至少,它以前不是)。 TestDriven,NET不能使用它們,如果它們不在安裝版本中。 – 2010-05-29 20:57:13

+2

啊,是的,好點。我沒有想過這個。我正在使用Ultimate,所以我得到了所有的鐘聲和口哨聲。 :) – 2010-05-29 21:03:52

+0

同樣; p但值得一提...... – 2010-05-29 21:14:47

1

假設你有一個支持代碼覆蓋率分析(Visual Studio的高級版或旗艦,看到他們的功能here詳細介紹),你可以按照這裏列出的步驟的產品:

http://msdn.microsoft.com/en-us/library/ms182534(v=vs.100).aspx

+0

tnx,有沒有辦法將報告與teamcity?我知道這裏有opencover的替代品,但是由於VS終極版有一個工具,我們可以讓它與teamcity一起工作嗎? – 2013-07-03 20:48:51

4
  1. 在解決方案樹,在解決方案項目文件夾下,創建一個新的測試 設置文件。 (TestSettings1.testsettings)

  2. 在測試設置對話框屏幕,選擇數據和 診斷左側。然後檢查代碼覆蓋率

  3. 能在同一屏幕上,雙擊代碼覆蓋率,然後選中要測試的.dll。點擊應用。

  4. 在Visual Studio菜單中,選擇測試,運行,解決方案中的所有測試

  5. 一旦試運行,在Visual Studio菜單中選擇測試中,Windows ..., 代碼覆蓋率結果

相關問題