デフォルトのスケジュールを使用して Anypoint Platform で API テストのスケジュール、実行、監視を行い、Cron ジョブを使用してスケジュールを変更することができます。bat login コマンドを実行すると、BAT はデフォルトで Anypoint Platform の本番環境にデプロイされます。BAT をデプロイしたら、bat schedule <options> コマンドを実行します。デフォルトでは、任意の Cron 式をコマンドに含めなかった場合、テストは 15 分ごとに実行されます。この手順の最後のステップでは、テストを 1 か月間、1 日 1 回実行する Cron 式を使用するようにこのデフォルトを変更します。
コマンドを実行すると、BAT は Anypoint Platform で監視を作成します。監視はテストのスケジュールされた実行に関する情報を収集します。この情報を取得するには、リンク先トピックで説明しているように、サードパーティのレポートツールをセットアップする必要があります。
テストおよび監視をスケジュールする手順は、次のとおりです。
-
BAT CLI を使用して Anypoint Platform にログインします。次に例を示します。
bat login --client-id=<value> --client-secret=<value> or bat login --username=<value> --password=<value>
-
デフォルトを使用してスケジュールを作成し、テストを監視します。任意のエンドポイント URL を指定し、必要に応じて --init-folder を使用してスケジュール情報を保存するために現在のディレクトリを指定します。次に例を示します。
bat schedule endpoint http://www.example.com --init-folder
デフォルトのログインプロファイルを使用してスケジュールが Exchange にパブリッシュされます。
BAT Version: 1.0.51
# File: ./tests/step.0.dwl
api-mon
✓ GET http://apimon.cloudhub.io/users (1316.85ms)
✓ 200 must equal 200
# File: ./tests/step.1.dwl
...
✓ 10 must equal 10
# Reporter: bat/Reporters/JSON.dwl >> /var/folders/w5/_cc_5_z12pq3qnymf3f0zh840000gq/T/bat_report_20180226111256.json
# Reporter: bat/Reporters/HTML.dwl >> /var/folders/w5/_cc_5_z12pq3qnymf3f0zh840000gq/T/bat_report_20180226111256.html
#Creating artifact...
+ exchange.json
+ .DS_Store
+ tests/step.0.dwl
+ tests/step.1.dwl
+ main.dwl
+ bat.yaml
# Creating artifact...OK
# Uploading 88f362bd-2092-4dbf-b9f2-db5624d7b4ab:www.telhill.com-ncQRvDwc:0.0.1
# Version 0.0.1 published
scheduleId: 99c24a04-b82b-4366-b02b-4682fa405ead
-
出力でリストされたローカル reporters のいずれかのパスに移動し、実行されたテストに関する情報を確認します。たとえば Mac OSX では、/var/folders/w5/_cc_5_z12pq3qnymf3f0zh840000gq/T/bat_report_20180226111256.html に移動します。
-
Exchange に移動し、bat schedule endpoint コマンドで指定した監視 URL に従って名前が付けられたアセットを参照します。この例では http://www.example.com です。
-
テストのスケジュールをリストします。
bat schedule list [--profile=<value>]
-
Cron 式を使用して、テストが繰り返し実行されるようにスケジュールします。たとえば、テストを 1 か月間、毎日午後 12:00 に実行します。
bat schedule create --cron="0 0 12 1/1 * ? *"