SOAtest の API カバレッジは、関連するリソースと操作をテストがどの程度カバーしているかを可視化します。この機能は、既存のテスト スイートの有効性を評価して、テストの追加が必要な箇所を判断するのに役立ちます。

SOAtest のレポートは、適用されるリソースと操作ごとにカバレッジの達成率を示すとともに、そのカバレッジに該当するテストの成功/失敗ステータスを示します。また、各操作をどの .tst ファイルとテストがカバーしたかを正確に特定します (このレベルでも成功/失敗の詳細がレポートされます)。

"カバー可能なリソース" とは

SOAtest は "カバー可能なリソース" に関連するリソースと操作をテストがどの程度カバーしているかを計測し、レポートします。(制約付きまたは制約なしの) SOAP Client、REST Client、Messaging Client ツールが、カバー可能なリソースに接触した場合、カバレッジ情報が適切なリソース/操作に関連付けられます。

[実行] > [API カバレッジ] > [テストから参照されている] オプションが有効なテスト コンフィギュレーションを使ってテストを実行した場合、SOAtest は制約付きの SOAP Client または REST Client ツールで設定されたサービス定義 (Swagger、RAML、WADL、WSDL) からカバー可能なリソースのリストを作成します。

自動的に作成されたカバー可能なリソース リストに加えて、あるいはその代わりに、ユーザー定義のカバー可能なリソース リストに対して SOAtest でカバレッジを計測したい場合、テスト コンフィギュレーションの [実行] > [API カバレッジ] > [ここで定義されている] の表でユーザー定義のリストを指定できます。



既知のカバー可能なリソースに一致しないサービスの場合、計測されたカバレッジは "Unknown Service" の下にレポートされます。現在、クエリー パラメーター、ペイロード、およびレスポンス コードのカバレッジ情報は計測されません。

例 1: テストが参照するサービス定義のカバレッジ計測

たとえば、2 つのテスト クライアントを持つテスト スイートがあるものとします。

  • "Petstore" サービス定義に制約され、関連する Petstore サービスを実行する REST Client。
  • 制約はないが、同じ Petstore サービスを実行する Messaging Client。

また、テスト コンフィギュレーションの [実行] > [API カバレッジ] > [テストから参照されている] オプションが有効化されているものとします。SOAtest は "Petstore" サービス定義を "カバー可能なリソース" として認識します。  なぜなら、このサービス定義が制約付き REST Client で設定されているからです。REST Client と Messaging Client の両方が Petstore サービスに接触するため、SOAtest は両方のツールのカバレッジを Petstore のリソースと操作の下にレポートします。

Petstore 以外のサービス (たとえば Grocerystore) を実行する新しい Messaging Client を追加した場合、このカバレッジは "Unknown Service" の下にレポートされます。

例 2: 特定のサービス定義だけを計測する

数百のテスト クライアント (その多くはさまざまなサービス定義に制約されている) を持つテスト スイートがあるものとします。そして、その中から http://machine:8080/api/v2/def で定義された API に関連するカバレッジだけをレビューしたいものとします。 これを実現するには、テスト コンフィギュレーションの [実行] > [API カバレッジ] > [テストから参照されている] オプションを無効化し、以下のように表を設定します。


  • No labels