本站点文档内容均翻译自code.visualstudio.com,仅供个人学习,如有差异请以官网为准。

使用 C# Dev Kit 进行测试

在 Visual Studio Code 中使用 C# 进行测试是由 C# Dev Kit 扩展启用的。它是一个轻量级的扩展,用于增强您的 C# 开发体验。

概述

该扩展支持以下测试框架:

C# Dev Kit 扩展提供以下功能:

  • 运行/调试测试用例
  • 查看测试报告
  • 在测试浏览器中查看测试

要求

项目设置

注意:如果您已经在项目中设置好了C#测试框架,您可以跳到功能部分。

启用测试并为您的项目添加测试框架包

您可以在解决方案资源管理器中通过几个步骤为项目启用测试框架:

xUnit

打开命令面板并选择.NET:新建项目..,然后选择xUnit 测试项目,并为新项目提供名称和位置。这将创建一个使用 xUnit 作为测试库的新项目和目录,并通过添加以下内容来配置测试运行器<PackageReference />将元素添加到项目文件。

  • 微软.NET测试工具包
  • xunit
  • xunit.runner.visualstudio
  • 盖毯.收集者

从终端运行以下命令:

dotnet 添加 [测试 csproj 文件的 位置] 引用 [项目 csproj 文件的 位置] 测试的 项目]

NUnit

打开命令面板并选择.NET:新建项目..,然后选择NUnit3 测试项目,并为新项目提供名称和位置。这将创建一个使用 NUnit 作为测试库的新项目和目录,并通过添加以下内容来配置测试运行器<PackageReference />将元素添加到项目文件。

  • 微软.NET测试工具包
  • nunit
  • NUnit3测试适配器

从终端运行以下命令:

dotnet 添加 [测试 csproj 文件的 位置] 引用 [项目 csproj 文件的 位置] 测试的 项目]

MSTest

打开命令面板并选择.NET:新建项目..,然后选择MSTest 测试项目,并为新项目提供名称和位置。这将创建一个使用 MSTest 作为测试库的新项目和目录,并通过添加以下内容来配置测试运行器<PackageReference />将元素添加到项目文件。

  • 微软.NET测试工具包
  • MSTest.测试适配器
  • MSTest.测试框架
  • 盖毯.收集者

从终端运行以下命令:

dotnet 添加 [测试 csproj 文件的 位置] 引用 [项目 csproj 文件的 位置] 测试的 项目]

功能

运行/调试测试用例

一旦你编写了测试用例,你需要对测试项目进行构建,以便它们被识别为测试。打开命令面板并选择.NET: 构建。这将构建你的项目。

C# Dev Kit 将在类和方法定义的左侧生成快捷方式(绿色播放按钮)。要运行目标测试用例,请选择绿色播放按钮。您也可以右键单击它以查看更多选项。

测试探索者

测试浏览器是一个树形视图,用于显示您工作区中的所有测试用例。您可以在Visual Studio Code的活动栏左侧选择烧瓶按钮来打开它。您还可以从那里运行/调试您的测试用例并查看其测试结果。如果您还没有对项目进行构建,请选择刷新测试按钮来执行构建并发现所有的测试。

C# 开发工具包中的代码覆盖

C# Dev Kit 现在支持通过 VS Code Code Coverage APIs 进行代码覆盖。此功能允许您通过显示在测试过程中哪些代码行被执行以及哪些未被执行来衡量测试的有效性。

代码覆盖是跟踪自动化测试执行了代码库百分比的指标。它有助于识别未测试的代码部分,并通过确保全面覆盖来提高测试质量。

注意:要启用代码覆盖,请确保已安装最新版本的 C# Dev Kit。

要使用代码覆盖运行测试,请按照以下步骤操作:

    1. 从活动栏中打开测试资源管理器。
    1. 选择并运行带有覆盖范围的测试:选择要运行的测试并使用覆盖范围执行它们。
    1. 查看覆盖数据:代码覆盖数据会自动生成,并在测试浏览器中与您的测试结果一起显示。

如果您已经生成了覆盖报告,并且想在 VS Code 中查看结果:

    1. 使用命令面板:打开命令面板 (⇧⌘P (Windows, Linux Ctrl+Shift+P)) 并搜索 "测试:显示覆盖" 以访问覆盖数据。
    1. 查看在编辑器中突出显示的代码覆盖情况:
    • 绿色线条:表示已测试的代码。
    • 红色线条:表示未测试的代码。
    1. 测试探索者摘要:测试探索者提供了整体覆盖摘要,并允许您探索需要额外测试的特定文件或方法。

为了提高代码的测试覆盖率:

  • 查看覆盖报告(在测试探索者或编辑器中),以识别标红的区域,这些区域表示未测试的代码。
  • 创建新的测试以覆盖报告中指出的未测试区域。
  • 重新运行测试并查看更新的覆盖范围,以确保您的代码经过充分测试。

查看测试结果

在运行/调试测试用例后,相关测试项目的状态将在编辑器标记和测试资源管理器中更新。

查看测试结果

您可以选择堆栈跟踪中的链接以导航到源位置。

VS Code 测试命令

有测试命令(例如,运行所有测试),可以在命令面板中通过搜索测试:找到(⇧⌘P(Windows, Linux Ctrl+Shift+P)。

在命令面板中测试命令

VS Code 测试设置

在设置编辑器中可以通过搜索测试找到特定于测试的 VS Code 设置 (⌘, (Windows, Linux Ctrl+))。

测试设置