.NET Core - 在 Visual Studio 中运行测试


在本章中,我们将讨论如何在 Visual Studio 中运行测试。.NET Core 在设计时就考虑到了可测试性,因此为应用程序创建单元测试比以往任何时候都更加容易。在本章中,我们将在 Visual Studio 中运行并执行我们的测试项目。

让我们在 Visual Studio 中打开 FirstApp 解决方案。

第一应用解决方案

您可以看到它只有两个项目,您将无法看到测试项目,因为我们尚未在解决方案中添加该项目。

让我们首先添加一个文件夹并将其命名为test

测试

右键单击测试文件夹。

测试文件夹

选择project.json文件并单击Open

项目 Json 文件

以下屏幕截图显示了Tests.cs文件中的代码作为输出。

测试

这是默认实现,只是测试 True 是否等于 true。它是 xUnit 测试框架,您将看到注释和表示测试方法的 Fact 属性。

using System; 
using Xunit; 
  
namespace Tests { 
   public class Tests { 
      [Fact] 
      public void Test1() { 
         Assert.True(true); 
      } 
   } 
} 

以下是project.json文件的实现。

{ 
   "version": "1.0.0-*", 
   "buildOptions": { 
      "debugType": "portable" 
   }, 
   "dependencies": { 
      "System.Runtime.Serialization.Primitives": "4.1.1", 
      "xunit": "2.1.0", 
      "dotnet-test-xunit": "1.0.0-rc2-192208-24" 
   }, 
   "testRunner": "xunit", 
   "frameworks": { 
      "netcoreapp1.0": { 
         "dependencies": { 
            "Microsoft.NETCore.App": { 
               "type": "platform", 
               "version": "1.0.1" 
            }
         }, 
         "imports": [ 
            "dotnet5.4", 
            "portable-net451+win8" 
         ] 
      } 
   } 
}

project.json文件中,对测试框架最重要的依赖是xunit,它引入了Fact属性。它引入了用于使用 xunit 进行测试的测试框架和 API。

我们还有dotnet-test-xunit,这是一个采用者,以便 xunit 可以与 .NET Core 一起使用,特别是与dotnet test命令行实用程序一起使用。然后您将看到将运行 xunit 的testRunner ,您还可以看到netcoreapp1.0框架。

您将在下面看到 .NETCore.App 依赖项。

要在 Visual Studio 中运行测试,请从“测试”→“窗口”→“测试资源管理器”菜单选项打开“测试资源管理器”。

测试资源管理器

您可以看到 Visual Studio 自动检测测试。测试的名称由namespace.className.TestMethodName组成。现在让我们单击Test Explorer 中的 Run All 按钮

运行全部按钮

它将首先构建代码并运行测试,您将看到测试所花费的总时间。让我们更改测试方法,以便在测试失败时可以看到输出。

using System; 
using Xunit; 
  
namespace Tests { 
   public class Tests { 
      [Fact] 
      public void Test1() { 
         Assert.True(false); 
      } 
   } 
} 

让我们通过单击“全部运行”按钮链接再次执行测试。

运行全部

您现在可以看到测试失败。