使用类库进行 C# NUnit 测试

问题描述 投票:0回答:1

我是新 NUnit,在测试项目中访问主项目的方法时遇到问题。特别是 MyMath 课程。

主课

public class MyMath
{
    public int Add(int a, int b)
    {
        return a + b;
    }
    public int Sub(int a, int b)
    {
        return a - b;
    }
}

测试班

[TestFixture]
class MyTestCase
{
    [TestCase]
    public void Add()
    {
        MyMath math = new MyMath();
        Assert.AreEqual(31, math.Add(20, 11));
    }

    [TestCase]
    public void Sub()
    {
        MyMath math = new MyMath();
        Assert.AreEqual(10, math.Sub(20, 10));
    }

我已按照教授指定的方式将主项目的引用添加到测试项目中 但仍然找不到我对 MyMath 类的引用
错误 CS0246 找不到类型或命名空间名称“MyMath”

我用这个教程来教我https://www.youtube.com/watch?v=f2NrKazjWes

c# nunit class-library
1个回答
0
投票

您正在使用

[TestCase]
属性进行测试。 NUnit 有
[Test]
属性,可以使用它来代替。

然后,进入

MyMath.cs
类,找到以关键字
namespace.
开头的行(靠近顶部),后面应该有文本。我推测您会看到一行内容:

namespace PROG2070Assign1

整个文件应该是:

public class MyMath
{
    public int Add(int a, int b)
    {
        return a + b;
    }
    public int Sub(int a, int b)
    {
        return a - b;
    }
}

理想情况下,所有类都应该用

namespace
块包裹。

现在,转到您的单元测试类文件,我假设该文件名为

MyTestCase.cs
。在文件顶部添加一行:

using PROG2070Assign1;

并将所有出现的

[TestCase]
更改为
[Test]

它应该可以工作(手指交叉)。

© www.soinside.com 2019 - 2024. All rights reserved.