如何区分测试类中的单元测试和集成测试?

w00*_*977 3 c# nunit

我的问题与此类似:Junit:拆分集成测试和单元测试.但是,我的问题是关于NUnit而不是:JUnit.在测试类中区分单元测试和集成测试的最佳方法是什么?我希望能够做到这样的事情:

[TestFixture]
    public class MyFixture
    {
        [IntegrationTest]
        [Test]
        public void MyTest1()
        {
        }

        [UnitTest]
        [Test]
        public void MyTest1()
        {
        }
    }
Run Code Online (Sandbox Code Playgroud)

有没有办法用NUnit做到这一点?有没有更好的方法来点这个?

Tru*_*ill 7

就个人而言,我发现将它们保存在单独的程序集中会更好.您可以使用一个约定,如名称 .Integration.Tests和名称 .Tests(或任何你喜欢的团队).

程序集或属性适用于TeamCity等CI服务器.属性方法的痛苦倾向于出现在IDE测试运行器中.我希望能够快速运行我的单元测试.使用单独的程序集,很容易 - 选择适当的测试项目并运行测试.