このセクションでは、回帰テストを行うよう機能テスト スイートを構成する方法を説明します。回帰テストを行うと、時間の経過につれて機能に予期しない変更が発生していないかを確認するのに役立ちます。
セクションの内容
回帰テストについて
回帰テストの目的は、予期しないエラーを検出することです。特に、開発者が以前は正しく機能していたコードを拡張する際、コードの内部的な関係を十分に理解していなかったために発生したエラーを検出することが目的です。回帰テストは、修正がコードに新たなエラーを導入していないことを保証し、また修正によって既存のエラーが正しく排除されていることを確認できる、信頼性のあるただ一つの方法です。
回帰テストの実行中、SOAtest は指定されたテスト ケースを実行し、現在の結果と過去に記録された結果を比較し、現在のレスポンスとコントロールのレスポンスの差異をレポートします。その後の回帰テストでは、期待される結果が返されるようになるまで、差異が報告されます。機能テストを実行してサービスが正しく機能していることを確認したら、回帰テストを開始して、システムの変更によってエラーや予期しない変化が発生していないかどうか確認することを推奨します。
回帰テストの作成
テスト スイート全体に対して自動的に回帰コントロールを作成することも、個々のテスト ケースに対して回帰コントロールを記録することもできます。すべての、または大部分のテスト ケースで回帰テストを実行する場合、テスト スイート全体に自動的に回帰コントロールを追加し、使用しないコントロールを削除することを推奨します。限られたテスト ケースでだけ回帰テストを実行する場合は、個々に回帰コントロールを追加するほうが効率的です。
回帰コントロールの自動作成
テスト スイート全体または特定のテスト ケースに対して自動的に回帰コントロールを作成するには、次の操作を行います。
- 対象のテスト スイートまたはテスト ノードを右クリックし、ショートカット メニューの [回帰コントロールの作成/更新] をクリックします。
- レスポンス検証ウィザードが開いたら [回帰コントロールの作成] を展開し、作成するコントロールのタイプを指定して [終了] をクリックします。選択されたテストに Diff コントロールが追加されます。
- 単一の回帰コントロール/複数の回帰コントロール: このオプションは、データ ソースのパラメータライズされた値を使用するテストでだけ指定できます。このオプションは、SOAtest が回帰コントロールを作成する際、データ ソースの 1 行だけを使用するか、データ ソースのすべての行を使用するかを指定します。
- 内部回帰コントロールの作成/外部回帰コントロールの作成: 外部回帰コントロールを使用すると、SOAtest の外部で回帰コントロールを管理できます。大きなメッセージを扱う場合、次の理由から、外部コントロールが推奨されます。 .tst ファイルのサイズを削減できる。 ExamXML Diff オプションを使用し、非常に大きなファイルを処理できる。 外部ファイルのコンテンツは可読性のあるテキストであるため、検索、更新、スクリプト処理、および管理が可能です。
その後、SOAtest が Diff コントロール付きのテストを実行する際は、常に実際の結果と Diff コントロールで指定された結果が比較されます。
単一の回帰コントロールを作成した場合、現在のプロジェクト ファイルと同じディレクトリに 1 つのファイルが保存されます。このファイルに回帰データが記録されます。
複数の回帰コントロールを作成した場合、各データ ソース行に関連するレスポンスが個別のファイルに保存されます。ランダムな名前が付いたディレクトリが作成され、DS_Row_001.xml などの名前が付いた複数のファイルが格納されます。ファイル名の数字は行番号に対応しています。たとえば、データ ソースに 5 行のデータがあり、回帰コントロールの作成時に 5 回テストが実行された場合、5 つのファイルが作成されます。
回帰コントロールの手動作成
テスト ケースに対して回帰テストを実行するが、現在の結果を比較対象の値として使用しない場合、テスト ケースに対して独自に Diff コントロールを定義することを推奨します。
テスト ケースに対して独自の Diff コントロールを定義するには、次の操作を行います。
- 「 Adding Test Outputs」で説明されている手順に従って Diff ツールを追加します。
- 「Diff」の説明に従って Diff ツールを構成します。
その後、SOAtest が Diff コントロール付きのテストを実行する際は、常に実際の結果と Diff コントロールで指定された結果が比較されます。
回帰オプションの変更
回帰コントロールを自動的に更新するには、次の操作を行います。
- 対象のテスト スイートまたはテストのノードを右クリックし、ショートカット メニューの [回帰コントロールの作成/更新] をクリックします。
回帰コントロールを手動で更新するには、次の操作を行います。
- Diff ツールをダブルクリックし、オプションを変更します。
テスト スイート内のすべての回帰コントロールについて、ロジックおよびデータ ソースの使用方法をカスタマイズするには、次の操作を行います。
- テスト ケース エクスプローラーでテスト スイートのノードをダブルクリックし、「Regression Options」で説明されているオプションを変更します。