2014-01-22 6 views
1

NUnit은 TestCase 속성이 TestFixture과 관련된 기능을 제공합니까? 동일한 인터페이스의 다른 구현에 대해 동일한 테스트 집합을 실행하고 싶습니다. 구체적인 구현은 SetUp 메서드에서 선택되며 각 테스트는 모든 구현과 함께 실행되어야합니다.테스트 케이스가있는 NUnit TestFixture

답변

0

이럴 가능성이 없습니다. 어쨌든 좋은 아이디어.

TestCase 속성에 대한 관심이 없다면 TestCaseSource 속성을 추상 기본 클래스와 함께 사용할 수 있습니다.

public abstract class A 
{ 
    public class TestCases : List<TestCaseData> 
    { 
     public TestCases() 
     { 
      Add(new TestCaseData(1)); 
      Add(new TestCaseData(2)); 
     } 
    } 

    public abstract void Test(int i); 
} 

[TestFixture] 
public class B : A 
{ 
    [Test] 
    [TestCaseSource(typeof(TestCases))] 
    public override void Test(int i) 
    { 
     Assert.That(i, Is.GreaterThan(0)); 
    } 
} 

[TestFixture] 
public class C : A 
{ 
    [Test] 
    [TestCaseSource(typeof(TestCases))] 
    public override void Test(int i) 
    { 
     Assert.That(i, Is.LessThan(10)); 
    } 
}