C++test にはユーザー定義テスト ケースを追加する方法が複数あります。
- テスト ケース エディター - ソース コードを記述せずにテスト ケースを作成するには、テスト ケース エディターを使用します。テスト ケース エディターでは、テスト ケース内の一般的なアクションを表した、あらかじめ定義されたステップを使用します。テスト ケースの構造を作成したり、入力パラメーターを指定したり、期待される出力を定義したりすることができます。テスト ケース エディターで作成したテスト ケースを保存して変更することで、簡単にテストを保守することができます。
- テスト ケース ウィザード - テスト ケース ウィザードは、新規コードのブラック ボックス テストを容易にする目的で追加された機能です。ユーザーは簡単な方法で入力と "期待される出力" を指定できます。また、たとえばグローバル変数など、テスト対象コードのデータ依存関係をより深く解析できるため、テスト ケースの設定が容易になります。テスト ケースのデータ ソース テンプレートを自動生成できる機能を持つのはテスト ケース ウィザードだけです。
- 潜在的なデメリット 一度に作成できるテストは 1 つだけです。
- テスト ケースの自動生成 - この機能は、カスタマイズ/拡張できるテストの大量開発を迅速かつ容易にするためのものです。大量の既存コードに対して特性化テストを実行したい場合、数多くの関数についてテストを一度に生成し、テスト結果を自動的にキャプチャする必要があります。この機能は、そのような特性化テストをサポートします。
- 潜在的なデメリット テスト ケースの値を制御するために、テスト ケースの編集が必要です。
- テスト スイート ウィザード - C++test テスト フレームワークに準拠する複雑なテスト コードを作成するためのフォームを迅速に作成することができます。
- 潜在的なデメリット テンプレートにコードを追加する必要があります。
このセクションでは、グラフィカルなエディターを使ってテスト ケースを追加し、テスト スイートを拡張する方法についてします。
このセクションの内容 :
- テスト ケース エディターによるテスト スイートとテスト ケースの追加
- グラフィカルなテスト ケース ウィザードによるテスト スイートとテスト ケースの追加
- 手動によるテスト スイートとテスト ケースの追加
- 自動生成テスト ケースの変更
- Setup 関数と Teardown 関数の使用
- 異なるコンテキストでの異なるテスト/スタブの使用
- スタンドアロン テスト スイートのカスタム コンパイラ オプションの設定
- リアルタイム システムでの応答時間の測定と検証
- 利用可能なマクロ
- 無限ループがある関数/メソッドのテスト
- 無名名前空間からの関数のテスト
- 利用可能なテスト関数
- テスト ケースの変更例
- テスト スイートの保守
テスト スイートは、既存の単体テスト ケース、つまり CppUnit テスト ケースを使って拡張することもできます。詳細については 「手動で作成された既存の CppUnit テスト ケースの実行」を参照してください。