NUnit:TestClass没有任何测试

本文关键字:任何 测试 TestClass NUnit | 更新日期: 2023-09-27 18:24:52

我正试图通过运行一些单元测试来测试NUnit。然而,我注意到一件事。在NUnit 2.6.2版本(最新版本)中,当我导入测试dll文件时,测试在适当的地方通过和失败,它们给了我正确的警告、消息和指示符。

然而,在NUnit版本2.4 RC1中,相同的单元测试被忽略。错误消息显示:"TestClass没有任何测试",但它确实包含测试。

为什么会这样?我正在尝试验证旧版本的软件,我需要在旧版本上运行单元测试。

我用这个例子来运行测试:http://www.codeproject.com/Articles/178635/Unit-Testing-Using-NUnit

NUnit:TestClass没有任何测试

如果您从引用的url中复制了代码片段,那么您一定有这样的东西:

[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);
    }
}

但是,如果您查看NUnit版本2.4的文档(此处),您可以看到指示测试的Property方法不是[TestCase]。请改用[Test]

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