C# nunit测试用例是否需要静态main方法?

C# nunit测试用例是否需要静态main方法?,c#,nunit,C#,Nunit,根据NUnit框架文档,您不需要静态main方法。您只需要将类标记为[TestFixture],并使用属性[Test]或[TestCase]或[TestCaseSource]标记方法 在构建项目之后,您应该能够在测试资源管理器中看到您的测试 如果您使用VisualStudio作为IDE,您可以在测试->窗口->测试资源管理器中找到它 更多详情请访问github NUnit网站: 顺便说一下,使用静态方法调用所有测试是一种不好的做法。您使用什么测试框架?看起来像是努尼特。在这里,您不需要一个mai

根据NUnit框架文档,您不需要静态main方法。您只需要将类标记为[TestFixture],并使用属性[Test]或[TestCase]或[TestCaseSource]标记方法

在构建项目之后,您应该能够在测试资源管理器中看到您的测试

如果您使用VisualStudio作为IDE,您可以在测试->窗口->测试资源管理器中找到它

更多详情请访问github NUnit网站:


顺便说一下,使用静态方法调用所有测试是一种不好的做法。

您使用什么测试框架?看起来像是努尼特。在这里,您不需要一个main方法作为入口点,而是需要一个加载单元测试程序集的单元测试运行程序。
nunit测试用例需要静态main方法吗?
否。它不需要。它不应该有。当您尝试使用和不使用main方法运行测试时发生了什么?每种情况下都发生了什么?另外,请注意TestFixture是可选的,因为NUnit 2.5适用于非通用和非参数化的fixture:。
[TestFixture]
public class CalciTest
{
    public static void main(string[] args)
    {
        calci calculator = new calci();
        add_Test();
        sub_Test();
    }

    [Test]
    public void add_Test()
    {

        int sum = calculator.add(5, 6);
        Assert.AreEqual(sum, 11);
    }
    [Test]
    public void sub_Test()
    {
        int diff = calculator.sub(15, 6);
        Assert.AreEqual(diff, 9);
    }
}