2010-06-13 45 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一个类中的两个不同的设置功能的两个 有点不同的设置功能。如果单个测试需要一些初始化,那么将初始化代码放入这些函数本身是有意义的。

我看到我的测试功能一半 需要一个安装

我想,那么你需要分析出测试...