このセクションの内容
全般的なオプションの設定
- [Parasoft] メニューの [設定] > [単体テスト アシスタント] をクリックします。
- [テストの場所] フィールドに、テストを保存する場所を指定します。あらかじめ設定されたパターンの中から選択するか、カスタム パターンを入力します。
ドロップダウン メニューからオプションを選択するか、以下の Eclipse 変数を使用してパターンをカスタマイズできます。${class_name}
- テスト対象クラスの名前${package_name}
- テスト対象クラスを含むパッケージの名前${source_folder}
- プロジェクトのソース ファイルを含むフォルダーの名前${project_name}
- テスト対象クラスを含むプロジェクトの名前${test_kind}
- テスト タイプの名前。これにより、通常のテストとパラメータライズされたテスト ケースを区別できます。 パラメータライズされた単体テストの作成に使用するフレームワークを選択します。デフォルトは JUnitParams です。
JUnitParams フレームワークを使用する場合、プロジェクトに JUnitParams ライブラリが追加されていることを確認してください。詳細については「必要な依存先ライブラリの追加」を参照してください。
[パラメータライズの設定] をクリックし、[テスト ケースの追加] オプションを使用してパラメータライズされたテスト ケースの作成する場合に使用する入力データを構成できます (詳細については「パラメータライズされた単体テストの作成」を参照してください)。
[タイプの選択] ドロップダウン メニューからデータ タイプを選択し、リストの値を追加、編集、削除することで、デフォルトの値のリストをカスタマイズできます。[検索] フィールドを使用すると、特定の値をすばやく検索できます。
新しい値を追加する場合、ファイルが正しく生成されるよう、値の文字エンコーディングは、ファイルの保存時に使用される文字エンコーディングと一致していなければなりません。[サンプル アサーションの生成] オプションを有効または無効にします。有効にした場合、UTA はテスト ケース作成時に自動的にアサーション テンプレートを生成します。アサーションはコード内にコメントとして作成されます。詳細については「基本的な単体テストの作成」を参照してください。このオプションは、デフォルトでオンです。
[タグ付けされたファクトリ メソッドを自動的に発見] オプションをオンまたはオフにします。オンの場合、UTA は自動的に以下を行います。
- IDE 起動時にすべてのプロジェクトをスキャンしてファクトリ メソッドを探します。
- プロジェクトが変更されたとき (たとえば Java ファイルまたはプロジェクトを作成または削除したとき)、ファクトリ メソッドの更新を検索します。詳細については「ファクトリ メソッドの設定」を参照してください。 このオプションはデフォルトでオンです。(任意) Spring テスト作成時にContextConfiguration アノテーションに含める属性を指定します。「Spring 単体テストの作成」を参照してください。
実行後に表示する推奨事項の種類を指定します。
他のスレッド - テストの状態に影響を与える可能性があるサイド スレッドを検出します。
アクセスできないフィールドのアサーション - 実行中に変更されたアクセスできないフィールドを検出し、アサーション テンプレートを生成します。
ファイルが作成されました - テスト実行中に作成されたが、実行後に削除されていないファイルを検出します。
モック可能な呼び出し - テストを適切に分離するために変更可能なモック オブジェクトへの呼び出しを検出します。
アサーションなし - アサーションが行われていないケースを検出します。
静的なフィールドの変更 - テスト実行中に静的フィールドが変更されたケースを検出します。
モック可能な静的呼び出し (PowerMock が必要) - PowerMock でモックするよう設定されている静的メソッドの呼び出しを検出します (「モック オプションの設定」を参照)。
システム プロパティの変更 - テスト実行中に変更されたが、実行後に復元されていないシステム プロパティを検出します。
カバーされていないコード - カバーされていないコード ブロックを検出します。UTA に表示される推奨事項のサンプルは、「単体テスト アシスタントを使用した単体テストの実行」を参照してください。
- 実行中に収集するデータの上限を指定します。
メソッド呼び出しの最大の深さ - 解析中のメソッド呼び出しの最大の深さを指定します。
単一のメソッドからのメソッド呼び出し最大回数 - 単一のメソッドからのサブメソッド呼び出しの最大回数を指定します。
メソッド呼び出し合計回数 - 解析中のメソッド呼び出し合計回数の最大値を指定します。 - [適用] をクリックします。
モック オプションの設定
- モック オプションを設定するには、[Parasoft] メニューの [設定] > [単体テスト アシスタント] > [モック] をクリックします。
- テストの作成および実行時にモック オブジェクトを有効にするには、[有効] チェック ボックスをオンにします。
- [モックにヘルパー メソッドを使用] オプションを有効または無効にします。このオプションが有効な場合、生成されるテスト クラスは、通常のテスト メソッドとオブジェクトを準備するがアサーションを作成しないヘルパー メソッドを分離します。
- 使用するモック フレームワークを指定します。
- PowerMock を使用する場合、モックする静的メソッドおよびコンストラクターを指定します。新しいメソッドまたはパターンを追加するには、[新規] をクリックします。パターンの比較には修飾されたメソッド名およびワイルドカード (*) を使用します。
.*
または<init>
で終わるパターンはコンストラクターに一致します。たとえば、次の図の設定は、以下をモックします。
- 名前の末尾が "Service" であるすべてのクラスのすべてのコンストラクター
- "com.example" に含まれるすべてのサブパッケージ内のすべてのDAO
クラスのすべての静的メソッドおよびコンストラクター
-InternalUtil
クラスのすべてのメソッド
指定されたパターンがクラスのすべてのメソッドに一致する場合、UTA はmockStatic()
メソッドを使用してクラスのすべての静的メソッドをモックします。その他の場合は、spy()
メソッドを使用して、指定された個々のメソッドをモックします。mockStatic()
およびspy()
メソッドの詳細についてはhttps://github.com/powermock/powermock/wiki/Mockito#usage を参照してください。
テーブルで指定された静的メソッドおよびコンストラクターだけがモックされます。UTA はテスト作成時に自動的にモックをテスト テンプレートに追加するか、テスト実行後にモックを追加するのに役立つ推奨事項を表示します (「モックの作成」を参照)。 - [適用] をクリックします。