Dunit的主要附加功能有:
1、重復運行某一TestCase
2、使用TtestSetup類初試化
Dunit的TestExtensions還提到了兩個類TactiveTest、TexceptionTestCase來實現:
3、在獨立線程中運行測試
4、Exception測試
但在Dunit中的最新源碼,這兩個類只是簡單繼承了TtestDecorator而沒有做任何的修改,在Dunit的Readme中也沒有提到這兩個類的用法。因此應該屬于還沒有實現的類。
重復運行TestCase
要重復運行某一TestCase,只需要將initialization里面的注冊代碼
TestFramework.RegisterTest(TTestCaseFirst.Suite);
簡單替換為:
TestFramework.RegisterTest(TRepeatedTest.Create(TTestCaseFirst.Suite, 2));
就可以,TRepeatedTest.Create的第一個參數為要重復的TestSuite/TestCase,第二個參數代表次數。運行后的結果如下:

請注意,TestCaseFirst前面多了“2x”。
使用TtestSetup類
使用TtestSetup類的作用就是在運行所有的測試方法前后只運行一次Setup幾TearDown?梢杂糜趧摻數據庫連接等等。
要使用TtestSetup,我們先在《創建一個簡單的例子》一節中創建的TestUnit中聲明一個新的類(先在Uses中加入Dialogs,TestExtensions)
TestSetupTest = class (TTestSetup)
protected
procedure SetUp; override; //初始化類
文章來源于領測軟件測試網 http://www.anti-gravitydesign.com/