2010-06-13 29 views
1

我有2個關於nunit功能的問題。2有關nUnit的問題

[TestFixtureSetUp]和[SetUp]屬性有什麼區別?

我正在寫一個測試課,我看到我的一半測試功能需要一個設置,另外一半需要另一個設置。 我怎麼能在一個類中有兩個不同的SetUp函數被調用不同的函數

謝謝。

回答

7

方法標有[TestFixtureSetUp]屬性將在當前測試套件的所有測試之前執行一次,並標有[SETUP]屬性方法將每個測試之前執行

至於含有測試的類,其中包含測試需要不同的設置功能。只需將它分成兩部分 - 每部分都有自己的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方法之前的任何的試驗方法被執行執行一次。在執行測試夾具中的每個測試方法之前執行Setup方法。

我怎麼能在一個類中屬於 不同功能

叫你不能在標記爲的TestFixture一個類中的兩個不同的設置功能的兩個 有點不同的設置功能。如果單個測試需要一些初始化,那麼將初始化代碼放入這些函數本身是有意義的。

我看到我的測試功能一半 需要一個安裝

我想,那麼你需要分析出測試...