このトピックでは、SOAtest/Virtualize サーバーでテスト コンフィギュレーションを使用する方法について説明します。このセクションの内容:
はじめに
テスト コンフィギュレーションは、テストの実行方法とレポート方法を決定する設定の集合です。SOAtest/Virtualizeサーバーには、次のデフォルト コンフィギュレーションが付属しています。
- Run Automated Server Tests.properties は、
<INSTALL>/soavirt/WEB-INF/configs/builtin
フォルダーにあります。このコンフィギュレーションでは、すべてのテストのトラフィックをレポートするオプションが有効になっています。Continuous Testing Platform からテストを実行する際に使用することを想定しています。 - Example Configuration.properties は、
<WORKSPACE>/TestAssets/configs/user
フォルダーにあります。すべてのテストのトラフィックをレポートするオプションは無効になっています。
テストコンフィギュレーション ファイルのプロパティを有効または無効にすることで、必要に応じてカスタマイズできます。また、カスタムのテスト コンフィギュレーションを作成し、それをワークスペースに追加して、プロジェクト内のテストの実行に使用することもできます。
ビルトイン テスト コンフィギュレーション
呼び出しの際に builtin://
とテスト コンフィギュレーション名を指定することで、ビルトイン テスト コンフィギュレーションを実行できます。次の例では、デフォルトの Run Automated Server Tests コンフィギュレーションに従ってテストが実行されます。
{ "general": { "config": "builtin://Run Automated Server Tests",
テスト コンフィギュレーションでカスタマイズできるプロパティについては、「Test Configuration Properties」を参照してください。 テスト コンフィギュレーションの詳細については「SOAtest テスト コンフィギュレーションの設定」を参照してください。指定した名前のテスト コンフィギュレーションがフォルダーに含まれていない場合、テストは実行されません。
ユーザー定義テスト コンフィギュレーション
呼び出しの際に user://
とテスト コンフィギュレーション名を指定することで、ユーザー定義テスト コンフィギュレーションを実行できます。次の例では、デフォルトの Example Configuration コンフィギュレーションに従ってテストが実行されます。
{ "general": { "config": "user://Example Configuration",
他のテスト コンフィギュレーションを <WORKSPACE>/TestAssets/configs/user
フォルダーに追加し、user://<TEST_CONFIG_NAME>
構文を使用して実行することができます。テスト コンフィギュレーションを追加するには、デフォルト コンフィギュレーションの複製を作成し、さまざまな方法でテストを実行するように複製を変更します。テスト コンフィギュレーションでカスタマイズできるプロパティについては、「Test Configuration Properties」を参照してください。
指定した名前のテスト コンフィギュレーションがフォルダーに含まれていない場合、テストは実行されません。
テスト コンフィギュレーションのプロパティ
Run Automated Server Tests.properties ファイルの以下の設定と、作成したいカスタム ユーザー コンフィギュレーションを変更できます ( 「User Configurations」を参照)。
- 機能テストのプロパティ
- API カバレッジのプロパティ
- アプリケーション カバレッジのプロパティ
- com.parasoft.xtest.execution.api.web.collect_application_coverage
- com.parasoft.xtest.execution.api.web.application_coverage_host
- com.parasoft.xtest.execution.api.web.application_coverage_port
- com.parasoft.xtest.execution.api.web.application_coverage_user_id
- com.parasoft.xtest.execution.api.web.application_coverage_report_as_test_failure
- com.parasoft.xtest.execution.api.web.application_coverage_upload_to_dtp
- com.parasoft.xtest.execution.api.web.application_coverage_static_coverage_file
- com.parasoft.xtest.execution.api.web.application_coverage_image_tags
- API セキュリティのプロパティ
- com.parasoft.xtest.execution.api.web.api_security_policy
- com.parasoft.xtest.execution.api.web.api_security_custom_policy_location
- com.parasoft.xtest.execution.api.web.api_security_timeout
- com.parasoft.xtest.execution.api.web.api_security_includes
- com.parasoft.xtest.execution.api.web.api_security_excludes
機能テストのプロパティ
com.parasoft.xtest.execution.api.web.execute_functional_tests
機能テストを実行するかどうかを指定します。機能テストの実行を有効にするには、このプロパティを true
に設定します。デフォル値は true
です。
例
com.parasoft.xtest.execution.api.web.execute_functional_tests=true
com.parasoft.xtest.execution.api.web.report_successful_traffic
API カバレッジ レポートに "テスト トラフィック[すべてのテスト]" セクションを表示するかどうかを指定します。このセクションには、テストが成功したかどうかに関係なく、すべてのテスト実行のトラフィックが表示されます。True
に設定すると、レポートに "テスト トラフィック[すべてのテスト]" セクションが表示されます。デフォル値は true
です。「API カバレッジの結果のレビュー」も参照してください。
例
com.parasoft.xtest.execution.api.web.report_successful_traffic=true
com.parasoft.xtest.execution.api.web.report_traffic_limit
テスト実行セッションの最中に保存するトラフィック データの総量を KB で指定します。テストごとに保存するデータ量ではありません。このプロパティが効力を発揮するには、com.parasoft.xtest.execution.api.web.report_successful_traffic
を有効にする必要があります。Com.parasoft.xtest.execution.api.web.report_successful_traffic
プロパティが有効な場合、成功したテストのデータだけが加算されます。デフォルト値は 500
です。
例
com.parasoft.xtest.execution.api.web.report_traffic_limit=500
API カバレッジのプロパティ
com.parasoft.xtest.execution.api.web.coverage_ref_by_tests
サービス定義のカバー可能なリソースを API カバレッジ レポートに含めるかどうかを指定します。 (カバレッジ リソースについては「API カバレッジ - 概要」を参照してください)。です。制約に従う SOAP Client、REST Client、Messaging Client ツールがカバー可能なリソースにアクセスする場合、カバレッジ情報は適切なリソース/操作に関連付けられます。サポートするサービス定義は以下のとおりです:
- OpenAPI/Swagger
- RAML
- WADL
- WSDL
デフォルト値は false
です。
例
com.parasoft.xtest.execution.api.web.coverage_ref_by_tests=true
com.parasoft.xtest.execution.api.web.perform_service_coverage_calculation
カバレッジ リソースのユーザー定義リストについて API カバレッジを計測するかどうかを指定します。カバレッジ リソースは com.parasoft.xtest.execution.api.web.service_coverage_table
で指定できます。
自動的に計測されるカバレッジ リソースに加えて、あるいはそれらの代わりに、カバレッジを計測できます。 「API カバレッジ - 概要」も参照してください。デフォルト値は false
です。
com.parasoft.xtest.execution.api.web.service_coverage_table
API カバレッジの計測に含めるリソースのリストを指定します。次の書式で、定義のリストをセミコロンで区切って指定します。
<definition_type>@<URI>
サポートする定義タイプは以下のとおりです:
- OpenAPI/Swagger
- RAML
- WADL
- WSDL
例
com.parasoft.xtest.execution.api.web.service_coverage_table=WSDL@http://soatest.parasoft.com/calculator.wsdl;OpenAPI/Swagger@file:///C:/openapi3.0/examples/v3.0/petstore.yaml;OpenAPI/Swagger@http://localhost:8080/soavirt/api/v5/def
この例の場合、次のリソースについてカバレッジ情報が含まれます。
- WSDL@http://soatest.parasoft.com/calculator.wsdl
- OpenAPI/Swagger@file:///C:/openapi3.0/examples/v3.0/petstore.yaml
- OpenAPI/Swagger@http://localhost:8080/soavirt/api/v5/def
アプリケーション カバレッジのプロパティ
com.parasoft.xtest.execution.api.web.collect_application_coverage
この設定は、カバレッジ エージェントを使用したアプリケーション カバレッジ データの収集を有効/無効にします。デフォルトは false
です。
例
com.parasoft.xtest.execution.api.web.collect_application_coverage=true
com.parasoft.xtest.execution.api.web.application_coverage_host
カバレッジ エージェントが存在するマシンのホスト名または IP アドレスを指定します。
例
com.parasoft.xtest.execution.api.web.application_coverage_host=myserver1.mycompany.com
com.parasoft.xtest.execution.api.web.application_coverage_port
カバレッジ エージェントのポートを指定します。デフォルト値は 8050
です。
例
com.parasoft.xtest.execution.api.web.application_coverage_port=8050
com.parasoft.xtest.execution.api.web.application_coverage_user_id
この設定はユーザー ID を指定し、カバレッジ結果が特定のユーザーと関連付けられるようにします。ユーザー ID は、カバレッジ エージェントがマルチ ユーザー モードで実行するように設定されている場合にだけ指定するべきです。詳細については、https://docs.parasoft.com で Parasoft コード解析ツール (Parasoft Jtest または Parasoft dotTEST) のユーザーズガイドを参照してください。
例
com.parasoft.xtest.execution.api.web.application_coverage_user_id=user_qa21
com.parasoft.xtest.execution.api.web.application_coverage_report_as_test_failure
カバレッジ エージェントの接続に失敗した場合、または静的カバレッジ ファイルの場所が正しく設定されていない場合に、テストの失敗をレポートするかどうかを指定します。このオプションが有効ではない場合、接続の問題はコンソールにレポートされますが、テストは失敗になりません。デフォルトは false
です。
例
com.parasoft.xtest.execution.api.web.application_coverage_report_as_test_failure=true
com.parasoft.xtest.execution.api.web.application_coverage_upload_to_dtp
This setting enables/disables sending application coverage results to DTP.com.parasoft.xtest.execution.api.web.collect_application_coverage
オプションを有効にする必要があります。デフォルトは true
です。
さらに、結果を DTP に送信するには、次の設定を行う必要があります。
- com.parasoft.xtest.execution.api.web.application_coverage_host
- com.parasoft.xtest.execution.api.web.application_coverage_port
- com.parasoft.xtest.execution.api.web.application_coverage_static_coverage_file
- com.parasoft.xtest.execution.api.web.application_coverage_image_tags
例
com.parasoft.xtest.execution.api.web.application_coverage_upload_to_dtp=true
com.parasoft.xtest.execution.api.web.application_coverage_static_coverage_file
Parasoft のコード解析ツール (Parasoft Jtest または Parasoft dotTEST) が .xml または .data 形式で生成した静的カバレッジ ファイルのパスを指定します。Parasoft のコード解析ツール (Parasoft Jtest または Parasoft dotTEST) が .xml または .data 形式で生成した静的カバレッジ ファイルのパスを指定します。
例
com.parasoft.xtest.execution.api.web.application_coverage_static_coverage_file=C:\projects\MyApp\target\jtest\monitor\static_coverage.xml
com.parasoft.xtest.execution.api.web.application_coverage_image_tags
DTP でカバレッジ イメージを作成するために使用されるタグのセットを指定します。カバレッジ イメージは、同じビルド ID を持つランのカバレッジ データを集約するための一意な識別子です。詳細については、https://docs.parasoft.com で Parasoft DTP ユーザーズガイドを参照してください。
例
com.parasoft.xtest.execution.api.web.application_coverage_image_tags=FT;AppCov;Aggregate
API セキュリティのプロパティ
com.parasoft.xtest.execution.api.web.api_security_policy
デフォルトまたはカスタムのスキャン ポリシーを使用するかどうかを指定します。値は default
または custom
のいずれかである必要があります。デフォルトは default
です。
例
com.parasoft.xtest.execution.api.web.api_security_policy=custom
com.parasoft.xtest.execution.api.web.api_security_custom_policy_location
この設定では、カスタム スキャン ポリシー ファイルの場所を指定します。com.parasoft.xtest.execution.api.web.api_security_policy
が default
に設定されている場合、このプロパティ値は無視されます。 詳細については、「侵入テスト」の「スキャン ポリシーの設定」を参照してください。
例
com.parasoft.xtest.execution.api.web.api_security_custom_policy_location=C:\projects\soatest\security\custom_security_policy.xml
com.parasoft.xtest.execution.api.web.api_security_timeout
Penetration Testing Tool のタイムアウト期間を分単位で指定します。デフォルト値は 15
です。
例
com.parasoft.xtest.execution.api.web.api_security_timeout=15
com.parasoft.xtest.execution.api.web.api_security_includes
Penetration Testing Tool でスキャンする URL を決定するために使用される正規表現を指定します。包含は除外の前に処理されます。包含が定義されていない場合、除外を考慮する前にすべてが含まれていると見なされます。複数の正規表現を区切るには、セミコロン ( ; ) を使用します。
例
com.parasoft.xtest.execution.api.web.api_security_includes=https?:\/\/localhost:8080\/parabank\/.*;https?\/\/www\.domain\.com\.*
com.parasoft.xtest.execution.api.web.api_security_excludes
Penetration Testing Tool のスキャン対象から除外するURLを決定するために使用される正規表現を指定します。除外は、包含の後に処理されます。複数の正規表現を区切るには、セミコロン ( ; ) を使用します。
例
com.parasoft.xtest.execution.api.web.api_security_excludes=.*\/(login|logout).*;.*\.gif;http:\/\/localhost:8080\/parabank\/index\.htm