このセクションの内容
デフォルトの設定では、C/C++test はテスト ケースを生成する際、定義済みの設定に従ってオブジェクトを初期化します。つまり、整数型であれば整数型に特有の値 (0、1、最大値、最小値など)を使用し、クラス型であればコンストラクターを使用するなどです。ファクトリ関数を定義すると、自動生成テスト ケースや、テスト ケース ウィザードで作成されるテスト ケースで使用される値を、他の方法で初期化することができます。
- エディターで ATM/ATM.cxx ファイルを開きます。
ソース コードの末尾で
ffs
とタイプして Ctrl + スペース キーを押し、 次のファクトリ関数を追加します。他のファクトリ関数テンプレートを追加するには、
ff
とタイプして Ctrl+スペース キーを押します。
[Generate Unit Tests] テスト コンフィギュレーションを作成する
- [Parasoft] メニューの [テスト コンフィギュレーション] をクリックして [テスト コンフィギュレーション] ダイアログを開きます。
- [ビルトイン] > [Unit Testing] > [Generate Unit Tests] テスト コンフィギュレーションを右クリックします。
- ショートカット メニューの [複製] をクリックします。このテスト コンフィギュレーションが [ユーザー定義] カテゴリにコピーされます。
- 複製されたテスト コンフィギュレーションの [生成] > [全般] タブを開きます。
- [テストを生成する関数のアクセス レベル] で [protected 関数] および [private 関数] チェックボックスをオンにします。
- [生成] > [テスト ケース] タブを開きます。
- [ファクトリ関数を使用する] および [初期化にはファクトリ関数だけを使用する] チェックボックスをオンにします。
- このユーザー定義テスト コンフィギュレーションの名前を [
Generate Unit Tests - Factory Functions
] に変更します。 - 変更を適用して [テスト コンフィギュレーション] ダイアログを閉じます。
[Generate Unit Tests - Factory Functions] テスト コンフィギュレーションを実行する
- プロジェクト ツリーで ATM.cxx をテスト スコープとして選択します。
- [Parasoft] メニューの [テストの実行] > [ユーザー定義] > [Generate Unit Tests - Factory Functions] をクリックします。
- テスト ケース エクスプローラーで結果を参照します。ATM クラスの private メソッドに対していくつかのテスト ケースが新しく生成されていることに注意してください。
- テスト ケース エクスプローラーで tests > autogenerated > TestSuite_ATM_cxx . . . を開き、test_deposit_1 テスト ケースをダブルクリックします。
- ATM の コンストラクターの引数 Bank* および BaseDisplay* がファクトリ関数を使用して初期化されていることに注意してください。