2010-06-13 5 views
1

nunit의 기능에 대해 2 가지 질문이 있습니다.2 nUnit에 대한 질문

[TestFixtureSetUp] 속성과 [SetUp] 속성의 차이점은 무엇입니까?

나는 테스트와 함께 몇 가지 클래스를 작성 중이며, 테스트 기능의 절반에 하나의 설정이 필요하다는 것을 알았습니다. 그리고 나머지 절반은 다른 설정이 필요합니다. 하나의 클래스에서 서로 다른 함수를 사용하여 호출되는 약간 다른 SetUp 함수를 어떻게 가질 수 있습니까?

감사합니다. 속성 [TestFixtureSetUp]로 표시

답변

7

방법은 현재 테스트 세트에서 모든 테스트전에 한번 실행되고, [설정] 속성 표시 방법은 각 시험 전에을 실행한다.

다른 설정 기능을 필요로하는 테스트가 포함 된 테스트의 클래스입니다. 이 클래스를 두 개로 나눕니다. 각 클래스마다 자체 SetUp 함수가 있습니다.

[TestFixture] 
    public void TestSuite1 
    { 
     [SetUp] 
     public void SetUp1() 
     { 
     ... 
     } 

     [Test] 
     public void Test1() 
     { 
     ... 
     } 
    } 

    [TestFixture] 
    public void TestSuite2 
    { 
     [SetUp] 
     public void SetUp2() 
     { 
     ... 
     } 

     [Test] 
     public void Test2() 
     { 
     ... 
     } 
    } 

또는 호 설정 기능은 명시

[TestFixture] 
    public void TestSuite 
    { 

     public void SetUp1() 
     { 
     ... 
     } 

     public void SetUp2() 
     { 
     ... 
     } 

     [Test] 
     public void Test1() 
     { 
     SetUp1(); 

     ... 
     } 

     [Test] 
     public void Test2() 
     { 
     SetUp2(); 

     ... 
     } 
    } 
1

TestFixtureSetup 방법은 한 번 실행 된 시험 법 중 어느 전에 실행된다. 설정 방법은 테스트 픽스처에서 각 테스트 메소드를 실행하기 전에 실행됩니다.

어떻게 하나 개의 클래스에서 당신은 TestFixture로 표시된 하나의 클래스에서 두 개의 서로 다른 설정 기능을 사용할 수 없습니다 다른 기능

호출 두 조금 다른 설정 기능을 가질 수 있습니다. 개별 테스트에 초기화가 필요한 경우에는 초기화 코드를 해당 함수 내부에 두는 것이 좋습니다.

나는 내 테스트 기능의 절반 필요

나는 당신이 시험을 고려 할 필요가 다음 생각 하나 개 설치를 ... 볼