Flex Gateway新着情報
Governance新着情報
Monitoring API Managerサンプルテストスイートのコンテンツを確認するには、ターミナルでコンピューターのファイルシステムにディレクトリを作成します。次に、そのディレクトリに移動して bat init
コマンドを実行します。このコマンドによって、次のフォルダーとファイルが作成されます。
. ├── bat.yaml ├── config │ ├── default.dwl │ ├── devx.dwl │ ├── qax.dwl │ └── stgx.dwl └── tests └── HelloWorld.dwl
bat.yaml
ファイルは、テストスイートのメインファイルです。この例には、次の行が含まれています。
suite: name: "Hello World Suite" files: - file: tests/HelloWorld.dwl reporters: - type: HTML outFile: /tmp/HTML.html # - type: SumoLogic # options: # SUMO_ENDPOINT: <sumo_source> # - type: PagerDuty # options: # PAGER_DUTY_ROUTING_KEY: <routing_key> # - type: Slack # options: # SLACK_WEBHOOK: <webhook_url> # - type: Email # options: # EMAILS: <email_list> # - type: NewRelic # options: # NEW_RELIC_LICENSE_KEY: <license_key> # - type: JSON # outFile: /tmp/JSON.json # - type: JUnit # outFile: /tmp/JUnit.xml
各テストスイートのルートレベルに bat.yaml
ファイルが含まれている必要があります。
bat.yaml
ファイルの files
セクションこのサンプルテストスイートには、1 つのテストのみが含まれています。テストは、tests
フォルダーのファイル HelloWorld.dwl
として files
セクションにリストされます。
テストを作成するときに、bat.yaml
ファイルでテストに参照を追加します。たとえば、テストスイートディレクトリで、api-tests
という名前のフォルダーを作成し、そのフォルダーに first-test.dwl
という名前のテストを記述するとします。bat.yaml
ファイルの files
セクションで、次のインデントされた行を追加します。
file: api-tests/first-test.dwl
second-test.dwl
という名前の 2 番目のテストを記述する場合、次の行を追加します。
file: api-tests/second-test.dwl
テストをリストする順序によって、BAT CLI によるテストの実行順序が決まります。この例では、テスト shoppingCart.dwl
の前にテスト orderFulfillment.dwl
が実行されます。
files: file: retail-site-tests/orderFulfillment.dwl file: retail-site-tests/shoppingCart.dwl
shoppingCart.dwl
テストの後に orderFulfillment.dwl
テストを実行するには、リストされている順序を変更します。
files: file: retail-site-tests/shoppingCart.dwl file: retail-site-tests/orderFulfillment.dwl
最後に、テストスイートのテストが含まれるフォルダーを複数作成できます。テストが含まれるフォルダー内にサブフォルダーを作成することもできます。bat.yaml
ファイルの files
セクションでテストをリストするときは正しい相対パスを指定するようにしてください。
bat.yaml
ファイルの reporters
セクションこれは、テストの失敗を報告するようにさまざまなツールやサードパーティアプリケーションを設定するセクションです。この例では、HelloWorld.dwl
テストが失敗したときに、失敗のレポートをファイル /tmp/HTML.html
に書き込むように BAT CLI に要求します。レポートのセットアップについては、「テストレポートの設定および表示」を参照してください。
bat.yaml
ファイルの secrets
セクション非公開の場所からテストスイートを実行する場合、BAT CLI の Anypoint シークレットマネージャーとのインテグレーションを使用して、テストで共有シークレットを使用できます。
config
フォルダーconfig
フォルダーには、ファイルの変数を保存できます。たとえば、API を開発して dev
と qa
の 2 つの環境にデプロイするとします。前者のエンドポイント URL は dev.myapi.com
で、後者のエンドポイント URL は qa.myapi.com
です。API は両方の環境で同様に動作します。
両方の環境で API をテストしたいと考えています。ただし、dev
の API のデプロイメントと qa
の API のデプロイメントのために 2 つのテストをコーディングする代わりに、各環境の設定ファイルを作成できます。設定ファイルごとに、対応する環境のエンドポイント URL を格納する url
という名前の変数を配置できます。
dev.dwl
のコンテンツ (dev
環境の設定ファイル){ url: "dev.myapi.com" }
qa.dwl
のコンテンツ (qa
環境の設定ファイル){ url: "qa.myapi.com" }
テストでは、url
変数を $(config.variable)
の構文内に配置して使用できます。variable は、使用する変数の名前です。次のサンプルテストでは、GET
要求で url
変数を使用して、応答コードが 200 である必要があるアサーションをテストします。
import * from bat::BDD import * from bat::Assertions --- suite("Hello world suite") in [ it must 'answer 200' in [ GET `$(config.url)` with {} assert [ $.response.status mustEqual 200 ] ] ]
テストを実行するときに、--config
パラメーターを使用して、使用する設定ファイルを指定できます。テストスイートを監視として Anypoint Platform の API 機能監視にアップロードする場合、監視のスケジュールの作成時に使用する設定を指定できます。
設定ファイルの形式として JSON、ファイル拡張子として .dwl
を使用します。各ファイルに配置できる変数の数に制限はありません。