<ol>
    <li>DUnit をダウンロードする。<br />
    <a href="http://dunit.sourceforge.net/">http://dunit.sourceforge.net/</a></li>
    <li>テストプロジェクトを作成する。<br />
    ファイル｜新規作成｜アプリケーション</li>
    <li>フォームを削除する。</li>
    <li>ユニットを追加する。：ファイル｜新規作成｜ユニット</li>
    <li>下記のようにプロジェクトソースを編集する<br />
    <ol>
        <li><strong>uses</strong> 節に以下の 2 ユニットを追加する。<br />
        <pre class="brush: delphi;" title="DUnit導入">
TestFramework, GUITestRunner
</pre>
        </li>
        <li>以下の 3 行を削除する<br />
        <pre class="brush: delphi;" title="DUnit導入に伴う削除部分">
Application.Initialize;
Application.CreateForm(TForm2,&nbsp;Form2);
Application.Run;
</pre>
        </li>
        <li>以下の行を追加する<br />
        <pre class="brush: delphi;" title="DUnit導入に伴う追加部分">
GUITestRunner.runRegisteredTests;
</pre>
        </li>
        <li>編集後、下記のようになる。<br />
        <pre class="brush: delphi;" title="DUnit導入したプロジェクトソース">
program UnitTest;

uses
  Forms,
  TestFramework,
  GUITestRunner,
  UUnitTest1 in 'UUnitTest1.pas';

{&#36;R *.res}

begin
	GUITestRunner.runRegisteredTests
//	Application.Initialize;
//	Application.CreateForm(TForm1, Form1);
//	Application.Run;
end.
</pre>
        </li>
    </ol>
    </li>
    <li>下記のようにテストユニットを作成する<br />
    <pre class="brush: delphi;" title="DUnit:テストユニット">
unit UUnitTest1;

interface

uses
	TestFramework, GUITestRunner;

type
	TTestUnit1= class(TTestcase)
	protected
		procedure SetUp; override;
		procedure TearDown; override;
	published
		procedure Case_TestOK1; virtual;
		procedure Case_TestOK2;
		procedure Case_TestNG1; virtual;
	end;

implementation

procedure TTestUnit1.SetUp;
begin
end;

procedure TTestUnit1.TearDown;
begin
end;

procedure TTestUnit1.Case_TestNG1;
begin
	check(false, 'TTestUnit1error');
end;

procedure TTestUnit1.Case_TestOK1;
begin
	check(true, '');
end;

procedure TTestUnit1.Case_TestOK2;
begin
	check(true, '');
end;

initialization
	TestFramework.RegisterTest('', TTestUnit1.Suite);

end.
</pre>
    </li>
</ol>
<p>上記は最も基本的な例なので、実際にはテストする内容に合わせて、テストクラス＆メソッドを作成する。<br />
テストメソッドは、published スコープにすること。</p>
<p>テストクラスのデフォルトメソッド：</p>
<table>
    <tbody>
        <tr>
            <th>メソッド名</th>
            <th>メソッド説明</th>
        </tr>
        <tr>
            <td>SetUp</td>
            <td>テストの準備作業を行う</td>
        </tr>
        <tr>
            <td>TearDown</td>
            <td>テストの後始末を行う</td>
        </tr>
    </tbody>
</table>
<p>Checkメソッドの説明：</p>
<table>
    <tbody>
        <tr>
            <th>順序</th>
            <th>メソッド説明</th>
        </tr>
        <tr>
            <td>1</td>
            <td>テスト結果：true = テストOK、false = テストNG</td>
        </tr>
        <tr>
            <td>2</td>
            <td>エラー時のメッセージ</td>
        </tr>
    </tbody>
</table>