c# - 未发现 NUnit v3 单元测试 - "Discover test finished: 0 found"

标签 c# .net-core nunit-3.0

测试类

[TestFixture]
public class Class1
{
    [Test]
    public void testtesttest()
    {
        Assert.IsTrue(true);
    }
}

依赖关系

Enter image description here

我按照 here 的说明进行操作.

为什么我找不到我的单元测试?

最佳答案

.NET 核心解决方案

事实证明我必须有一个单元测试项目而不是类库:

Unit Test project

我还遵循了 MSDN 网站上的说明 here .

我在命令提示符下运行以下命令以确保我拥有单元测试模板:

dotnet new -i NUnit3.DotNetNew.Template

我的 NuGet 包依赖项

  <ItemGroup>
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.5.0" />
    <PackageReference Include="MSTest.TestAdapter" Version="1.2.0" />
    <PackageReference Include="MSTest.TestFramework" Version="1.2.0" />
    <PackageReference Include="NUnit" Version="3.8.1" />
    <PackageReference Include="NUnit3TestAdapter" Version="3.9.0" />
  </ItemGroup>

更新

正如@Lexli 指出的那样,如果您只打算使用 NUnit 测试,则不需要 MSTest 包。

但是,请确保您使用的是 .NET Core 而不是 .Netcore Standard。 .NET Core 附带运行所需的 Microsoft.netCore.App SDK单元测试。无法使用 .NET 标准类库运行单元测试。

引用 .NET Framework 4.0 的项目

在 .NET Framework 为 v4.0 的项目中,我必须使用 NUnit 3.0 版 - 任何更高的版本都没有发现该项目。

还是不行?

尝试清除位于 %TEMP% 目录中的临时文件。

注意:这个路径一般在C:\Users\(yourusername)\AppData\Local\Temp

关于c# - 未发现 NUnit v3 单元测试 - "Discover test finished: 0 found",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47923599/

相关文章:

c# - 仅显示index.cshtml中的x个项目

c# - 网络核心版本问题

c# - Entity Framework 核心 : Extend Entity without partial

c# - .Net Core 3 Serilog 的依赖注入(inject)

.net - 为什么 .NET Core 和 .NET 5 会生成可执行文件?

c# - 在 .NET Core 控制台应用程序中使用带有 NUnit3 的 app.config 文件

.net - NUnit 文本输出不正常

nunit - NUnit 与 NUnit2 之间的区别

c# - AppDomain,处理异常

c# - 在 C# 中将字符串转换为 DateTime,最后使用 EDT