使用 C# Dev Kit 進行測試
在 Visual Studio Code 中進行 C# 測試由 C# Dev Kit 擴充套件支援。這是一個輕量級擴充套件,旨在增強您的 C# 開發體驗。
概述
該擴充套件支援以下測試框架:
C# Dev Kit 擴充套件提供以下功能
- 執行/除錯測試用例
- 檢視測試報告
- 在測試資源管理器中檢視測試
要求
- .NET 6.0 SDK 或更高版本
- Visual Studio Code(版本 1.58.0 或更高版本)
- C# Dev Kit
專案設定
注意:如果您已在專案中設定了 C# 測試框架,則可以直接跳至“功能”部分。
啟用測試並將測試框架包新增到您的專案
只需在“解決方案資源管理器”中進行幾步操作,即可為您的專案啟用測試框架
xUnit
開啟命令面板,選擇 .NET: 新建專案...,然後選擇 xUnit 測試專案,並提供新專案的名稱和位置。這將建立一個使用 xUnit 作為測試庫的新專案和目錄,並透過將以下 <PackageReference /> 元素新增到專案檔案來配置測試執行器。
- Microsoft.NET.Test.Sdk
- xunit
- xunit.runner.visualstudio
- coverlet.collector
在終端中,執行以下命令
dotnet add [location of your test csproj file] reference [location of the csproj file for project to be tested]
NUnit
開啟命令面板,選擇 .NET: 新建專案...,然後選擇 NUnit3 測試專案,並提供新專案的名稱和位置。這將建立一個使用 NUnit 作為測試庫的新專案和目錄,並透過將以下 <PackageReference /> 元素新增到專案檔案來配置測試執行器。
- Microsoft.NET.Test.Sdk
- nunit
- NUnit3TestAdapter
在終端中,執行以下命令
dotnet add [location of your test csproj file] reference [location of the csproj file for project to be tested]
MSTest
開啟命令面板,選擇 .NET: 新建專案...,然後選擇 MSTest 測試專案,並提供新專案的名稱和位置。這將建立一個使用 MSTest 作為測試庫的新專案和目錄,並透過將以下 <PackageReference /> 元素新增到專案檔案來配置測試執行器。
- Microsoft.NET.Test.Sdk
- MSTest.TestAdapter
- MSTest.TestFramework
- coverlet.collector
在終端中,執行以下命令
dotnet add [location of your test csproj file] reference [location of the csproj file for project to be tested]
功能
執行/除錯測試用例
編寫測試用例後,您需要生成測試專案,以便它們能夠被識別為測試。開啟命令面板,選擇 .NET: 生成。這將生成您的專案。
C# Dev Kit 將在類和方法定義的左側生成快捷方式(綠色播放按鈕)。要執行目標測試用例,請選擇綠色播放按鈕。您也可以右鍵單擊它以檢視更多選項。
測試資源管理器
測試資源管理器是一個樹狀檢視,用於顯示工作區中的所有測試用例。您可以選擇 Visual Studio Code 左側活動欄中的燒杯按鈕來開啟它。您也可以從那裡執行/除錯測試用例並檢視其測試結果。如果您還沒有生成專案,請選擇“重新整理測試”按鈕來生成專案並發現所有測試。
C# Dev Kit 中的程式碼覆蓋率
C# Dev Kit 現在透過 VS Code 程式碼覆蓋率 API 支援程式碼覆蓋率。此功能使您能夠透過顯示測試期間執行的程式碼行以及未執行的程式碼行來衡量測試的有效性。
程式碼覆蓋率是一個跟蹤自動化測試執行的程式碼百分比的指標。它有助於識別未測試的程式碼部分,並透過確保全面的覆蓋範圍來提高測試質量。
注意:要啟用程式碼覆蓋率,請確保您已安裝最新版本的 C# Dev Kit。
要執行帶有程式碼覆蓋率的測試,請按照以下步驟操作
-
- 從活動欄開啟測試資源管理器。
-
- 選擇並執行帶有覆蓋率的測試:選擇要執行的測試,並執行它們以獲取覆蓋率。
-
- 檢視覆蓋率資料:程式碼覆蓋率資料會自動生成,並在測試資源管理器中與測試結果一起顯示。
如果您已生成覆蓋率報告並希望在 VS Code 中檢視結果
-
- 使用命令面板:開啟命令面板(⇧⌘P (Windows, Linux Ctrl+Shift+P)),然後搜尋“Test: Show Coverage”來訪問覆蓋率資料。
-
- 在編輯器中檢視程式碼覆蓋率高亮顯示
- 綠色線條:表示已測試的程式碼。
- 紅色線條:表示未測試的程式碼。
-
- 測試資源管理器摘要:測試資源管理器提供整體覆蓋率摘要,並允許您探索需要額外測試的特定檔案或方法。
提高程式碼的測試覆蓋率
- 檢查覆蓋率報告(在測試資源管理器或編輯器中),以識別標記為紅色的區域,這些區域表示未測試的程式碼。
- 建立新測試以覆蓋報告中突出顯示的未測試區域。
- 重新執行測試並檢視更新的覆蓋率,以確保您的程式碼經過充分測試。
檢視測試結果
執行/除錯測試用例後,相關測試項的狀態將在編輯器裝飾和測試資源管理器中得到更新。

您可以選擇堆疊跟蹤中的連結來導航到源位置。
VS Code 測試命令
可以透過在命令面板(⇧⌘P (Windows, Linux Ctrl+Shift+P))中搜索“Test:”來找到測試命令(例如,執行所有測試)。

VS Code 測試設定
可以透過在設定編輯器(⌘, (Windows, Linux Ctrl+,))中搜索“Testing”來找到特定於測試的 VS Code 設定。
