HOW TO:取得程式碼涵蓋範圍資料

您可以一行一行或甚至一個區塊一個區塊的方式,測量測試的效能。 這項測量可以透過設定測試回合以產生程式碼涵蓋範圍資料來達成。 產生的資料會顯示在 [程式碼涵蓋範圍結果] 視窗和您的原始程式碼檔中。

當成品 (通常是二進位檔案) 已經過「檢測」(Instrument),並在執行測試回合期間載入記憶體時,就會收集程式碼涵蓋範圍資料。 Obtaining Code Coverage Data程序會說明如何選取檔案以進行檢測。

完成測試回合之後,您可以檢視程式碼涵蓋範圍資料。如需詳細資訊,請參閱Viewing Code Coverage Data。

需求

  • Visual Studio Ultimate, Visual Studio Premium

您也可以合併多組程式碼涵蓋範圍資料,如 HOW TO:合併程式碼涵蓋範圍資料中的說明。 如需與合併程式碼涵蓋範圍資料有關之各種情況的詳細資訊,請參閱使用合併的程式碼涵蓋範圍資料

檢測及重新簽署組件中所說明的,已檢測之強式名稱的組件必須重新簽署。 您可以透過指定金鑰檔,啟用重新簽署。

取得程式碼涵蓋範圍資料

取得程式碼涵蓋範圍資料

  1. 為您的程式碼建立測試。 這可能是單元測試,或是其他能夠執行具有符號之程式碼的測試類型,以及您已選取要檢測之適當二進位碼檔案的測試類型。

    如需有關如何建立單元測試的詳細資訊,請參閱 針對現有的程式碼建立和執行單元測試

  2. 開啟您將用於單元測試的測試設定。

    如需詳細資訊,請參閱建立測試設定以便從 Visual Studio 執行自動化的測試

  3. 依照本主題中的步驟,設定您所要收集的程式碼涵蓋範圍資料:HOW TO:使用自動化測試的測試設定進行程式碼涵蓋範圍的設定

  4. 執行一或多項測試。

    如需詳細資訊,請參閱 HOW TO:從 Microsoft Visual Studio 執行自動化測試

    在執行測試的同時,就會收集到程式碼涵蓋範圍資料。 如需進行檢視的詳細資訊,請參閱Viewing Code Coverage Data。

    注意事項注意事項

    執行 VSPerfMon.exe can 可以與收集的程式碼涵蓋範圍資料進行互動。如需詳細資訊,請參閱Visual Studio ALM 測試工具的疑難排解中的<程式碼涵蓋範圍資料和 VSPerfMon.exe>章節。

    在 64 位元處理序中執行的應用程式,無法收集程式碼涵蓋範圍資料。 因此,如果您在測試此種應用程式時要求程式碼涵蓋範圍資料,測試引擎會在要檢測之組件的「可攜式執行檔」(PE) 標頭中設定 "32BIT" 旗標。 當測試回合完成後,該組件會返回其原始狀態。

檢視程式碼涵蓋範圍資料

必要條件:您已經執行產生過程式碼涵蓋範圍資料的測試,如Obtaining Code Coverage Data。

檢視程式碼涵蓋範圍資料

  1. 在 [測試結果] 工具列上,按一下 [程式碼涵蓋範圍結果]。 或者,按一下 [測試] 功能表上的 [視窗],再按 [程式碼涵蓋範圍結果]。

    [程式碼涵蓋範圍結果] 視窗隨即開啟。

  2. 在 [程式碼涵蓋範圍結果] 視窗中,[階層架構] 欄會顯示一個節點,該節點包含了上次測試回合所收集到的所有程式碼涵蓋範圍資料。 如果發生錯誤,錯誤訊息會顯示在這個位置,而非根節點中。 如果出現節點,請展開節點。

    注意事項注意事項

    根據預設,這個測試回合節點會以 <使用者名稱>@<電腦名稱> <日期> <時間> 的格式命名。您可以在 [選項] 對話方塊的 [一般] 頁面中變更預設的命名結構描述。

  3. 展開實際執行程式碼中組件、命名空間和類別的節點。

    類別內的資料列代表它的方法。 這個資料表中的資料行會顯示個別方法、類別和整個命名空間的涵蓋範圍統計資料。

  4. 按兩下類別內其中一個方法的資料列。

    原始程式碼檔會開啟至您選擇的方法。 在這個檔案中,您可以看到反白顯示的程式碼。 捲動一下,您會看到這個檔案中其他方法的涵蓋範圍。 若要變更程式碼行的反白顯示色彩,請參閱Changing the Display of Code Coverage Data。

    注意事項注意事項

    您可以按一下 [測試工具] 工具列上的按鈕,以切換顯示檔案內的程式碼涵蓋範圍,並且巡覽至檔案內的上一行或下一行程式碼。

  5. (選擇性) 如果您已選取測試專案 DLL 的核取方塊,則可以開啟包含單元測試的原始程式碼檔,以查看測試方法是否已執行。

顯示不同的程式碼涵蓋範圍計算

程式碼涵蓋範圍計算會在 [程式碼涵蓋範圍結果] 視窗中,以資料行顯示程式碼涵蓋範圍總數。 其中有多達八個資料行可以顯示測試回合所涵蓋之程式碼的計算,以及未涵蓋之程式碼的計算。 您可以啟用這些資料行,以百分比或數字總值顯示計算。 您也可以啟用資料行,顯示程式碼行和程式碼區塊的計算。

顯示或隱藏程式碼涵蓋範圍資料行

  1. 以滑鼠右鍵按一下 [程式碼涵蓋範圍結果] 視窗中的任何資料。

  2. 按一下 [新增/移除資料行]。

  3. 選取要顯示之項目旁邊的核取方塊,並清除要移除之項目旁邊的核取方塊。

  4. 按一下 [確定]。

變更程式碼涵蓋範圍反白顯示的顯示

依預設會使用特殊的色彩來指示特定的程式碼是否已涵蓋在已執行的測試中, 並且會以淺藍色顯示已在執行回合中執行的程式碼行,並以紅褐色顯示未執行的程式碼行。 顯示米黃色的程式碼行,則表示有些程式碼已執行過,有些則還沒執行。

變更程式碼涵蓋範圍資料的顯示

  1. 按一下 [工具],再按一下 [選項]。

    [選項] 對話方塊隨即出現。

  2. 展開 [環境]。

  3. 按一下 [字型和色彩]。

  4. 在 [顯示設定] 底下,選取 [文字編輯器]。

  5. 在 [顯示項目] 底下,選取您要變更顯示色彩的程式碼涵蓋範圍區域。 共有 [涵蓋範圍未觸及的區域]、[涵蓋範圍部分觸及的區域] 和 [涵蓋範圍觸及的區域] 三個選項。

  6. 變更這個程式碼涵蓋範圍區域的設定。 您可以變更前景色彩和背景色彩,以及文字的字型、字型大小和粗體。

  7. (選擇性) 變更其他程式碼涵蓋範圍區域的設定。

  8. 完成後,請按一下 [確定]。

請參閱

工作

HOW TO:從 Microsoft Visual Studio 執行自動化測試

建立測試設定以便從 Visual Studio 執行自動化的測試

Visual Studio ALM 測試工具的疑難排解

概念

檢測及重新簽署組件

使用合併的程式碼涵蓋範圍資料

其他資源

針對現有的程式碼建立和執行單元測試