NUnit VS Adapter 2 没有找到我的测试

NUnit VS Adapter 2 is not finding my tests

也许有人在 Nunit 测试中遇到过同样的问题。我已经下载了 Nunit 和 Nunit 适配器,我写了一些代码和一些单元测试,但它说:

NUnit VS Adapter 2.0.0.0 discovering test is finished
========== Discover test finished: 0 found (0:00:00,4917596) ==========

也许你可以告诉我一些想法,如何解决它?

我读了一些教程,它说我应该使用测试资源管理器,它会自动集成我的测试。但是没有任何反应,也许问题在于我使用 3.0.1 版本的 Nunit?

namespace ConsoleApplication16
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Enter two numbers\n");
            int number1;
            int number2;
            number1 = int.Parse(Console.ReadLine());
            number2 = int.Parse(Console.ReadLine());

            MathsHelper helper = new MathsHelper();
            int x = helper.Add(number1, number2);
            Console.WriteLine("\nThe sum of " + number1 +
                " and " + number2 + " is " + x);
            Console.ReadKey();
            int y = helper.Subtract(number1, number2);
            Console.WriteLine("\nThe difference between " +
                  number1 + " and" + number2 + "  is " + y);
            Console.ReadKey();
        }
    }

    public class MathsHelper
    {
        public MathsHelper() { }
        public int Add(int a, int b)
        {
            int x = a + b;
            return x;
        }

        public int Subtract(int a, int b)
        {
            int x = a - b;
            return x;
        }
    }
}

测试:

using NUnit.Framework;

namespace ConsoleApplication16
{
    [TestFixture]
    public class TestClass
    {
        [TestCase]
        public void AddTest()
        {
            MathsHelper helper = new MathsHelper();
            int result = helper.Add(20, 10);
            Assert.AreEqual(30, result);
        }

        [TestCase]
        public void SubtractTest()
        {
            MathsHelper helper = new MathsHelper();
            int result = helper.Subtract(20, 10);
            Assert.AreEqual(10, result);
        }
    }
}

包:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="NUnit" version="3.0.1" targetFramework="net452" />
  <package id="NUnitTestAdapter" version="2.0.0" targetFramework="net452" />
</packages>

如果您使用的是 Nunit 3,则必须使用 NuGet 中可用的适当测试适配器 NUnit3TestAdapter

<packages>
  <package id="NUnit" version="3.0.1" targetFramework="net452" />
  <package id="NUnit3TestAdapter" version="3.0.8-ctp-8" targetFramework="net452" />
</packages>

请注意,它目前仍处于预发布阶段,因此您必须在 NuGet 管理器 GUI 中打开 "Include pre-releases" 复选框才能看到它,或者使用包管理器控制台中的 –IncludePrerelease 选项。