在Visual Studio 2017中使用NUnit测试 NET Core

在Visual Studio 2017中使用NUnit测试 NET Core

出现下面这种情况:

 

然后添加NuGet引用到测试框架 NUnit3.6.1,

到测试运行器 NUnit3TestAdapter 3.8.0-alpha1和测试SDK Microsoft.NET.Test .Sdk15.0.0。(下载这个运行测试器即可)

使用“ 管理NuGet包...”用户界面添加引用,或者编辑项目文件。

 

 

 

从project.json格式切换到.NET Core和.NET Standard项目的新的基于csproj的格式也改变了测试适配器的API。因此,NUnit的dotnet-test-nunit适配器停止工作,我们必须更新现有的Visual Studio测试适配器 来支持.NET Core。昨天晚上,我发布了测试适配器的第一个alpha版本到NuGet ,使用Visual Studio 2017,Visual Studio Code,TFS Build以及dotnet测试CLI命令来测试.NET Core和.NET Standard项目。

创建一个测试项目

以下说明适用于Visual Studio,但是这些原则适用于所有开发环境。

在要测试的解决方案中,添加| 新建项目...并添加一个Visual C#| .NET核心| 类库(.NET Core)。

在Visual Studio 2017中使用NUnit测试 NET Core_第1张图片

我正在测试一个.NET标准库,但我正在使用.NET核心类库进行测试。测试需要一个测试平台,所以你的测试程序集必须针对特定的平台。我选择了.NET Core,但是我也可以瞄准.NET 4.5甚至是多目标测试程序集。请注意,Visual Studio几乎不支持多目标测试项目,结果可能会有所不同。希望我们很快会看到工具的改进。

添加NuGet引用

首先,您将要添加一个项目引用到您正在测试的项目,然后添加NuGet引用到测试框架 NUnit3.6.1,到测试运行器 NUnit3TestAdapter 3.8.0-alpha1和测试SDK Microsoft.NET.Test .Sdk15.0.0。使用“ 管理NuGet包...”用户界面添加引用,或者编辑项目文件。

在Visual Studio 2017中使用NUnit测试 NET Core_第2张图片

你的csproj文件应该看起来类似于这个。注意新格式有多清洁。

在Visual Studio 2017中使用NUnit测试 NET Core_第3张图片

在Visual Studio中运行测试

在Visual Studio中运行测试没有改变。如果您有任何疑问,请参阅我之前在Visual Studio中运行NUnit测试的文章。

在Visual Studio 2017中使用NUnit测试 NET Core_第4张图片

有几件事要注意,

如果多目标测试,只有一个目标将运行在Visual Studio中,我相信第一个

.NET Core不支持代码覆盖率,这将在未来的Visual Studio更新中提供

Live单元测试也不适用于.NET Core

从命令行运行测试

将NUnit 3测试适配器添加到您的项目也将允许您使用dotnet测试 CLI。下面是一个运行在针对.NET 4.5和.NET Core 1.1的单元测试中的例子。

在Visual Studio 2017中使用NUnit测试 NET Core_第5张图片

测试针对两个目标运行,并且您从dotnet测试命令获得输出,而不是从NUnit控制台获得的正常颜色的NUnit输出。希望我们将在不久的将来发布更新的控制台运行。

你可能感兴趣的:(在Visual Studio 2017中使用NUnit测试 NET Core)