mabl CLIでは、テストをローカルマシンで実行したり、テスト実行を直接CI/CDプロセスに統合することができます。mabl CLIは実行環境ではなく、クラウドまたはローカル/CI環境でmablテストをトリガーするためのツールです。
次のコマンドはクラウドでのテスト実行をトリガーし、並列実行がサポートされています。
- mabl deployments create - デプロイメントエベントをトリガーし、mablクラウドで定義されたフィルターに一致するプランを実行します。
- mabl tests run-cloud - mabl クラウドで1つ以上のテストを実行します
ローカルおよびセルフホストCI環境は、順次実行のみをサポートしています。ローカルおよびCI環境でテストを実行するには、次のコマンドを使用してください。
- mabl tests run - ローカルマシンまたはCI環境で1つ以上のブラウザまたはAPIテストを実行します
- mabl tests run-mobile - あなたのローカルマシンで1つ以上のモバイルテストを実行します
mabl CLIからテストをトリガーする方法について詳しく知るには、続きをお読みください。
mabl deployments create
mabl deployments create コマンドを使用して、指定されたフィルターセットに一致するすべてのプランをmablクラウドで並行実行するようにトリガーします。フィルターには、アプリケーション、環境、およびプランラベルを含めることができます。
デプロイメントエベントは多くのテストを並行して実行できるため、このコマンドは大量のテストに対して堅牢な検証を行うのに最適です
オプション
最低でも、次のいずれかの方法を使って、どのプランを実行するかを指定してください。
| オプション | 説明 |
|---|---|
--application-id および/または --environment-id
|
実行したいプランを指定するには、次のオプションのうち少なくとも一つを使ってください。 |
--plan-labels |
オプション: スペースで区切られたプランラベルのリスト内のいずれかのラベルに一致するプランを実行します。 |
mabl deployments create コマンドは、オーバーライド、ブランチ、ブラウザー設定、出力などを構成するための多数のオプションをサポートしています。すべてのオプションの完全な一覧については、mabl deployments create -h を実行して mabl CLI のドキュメントを参照してください。
オプションやサンプルコマンドの詳細については、mabl CLI のデプロイメントイベントに関する記事を参照してください。
出力
デフォルトでは、CLIはmablアプリでデプロイメントエベントの結果を表示するためのリンクを出力します。
例
# Trigger a deployment of all plans with a "regression" label
mabl deployments create -e {environment-id} --labels regression
# Use a URL override to run plans against a preview environment
mabl deployments create -e {environment-id} --app-url {url-override}mabl tests run-cloud
mabl tests run-cloud コマンドを使用して、mablクラウドで1つ以上のテストを並行して実行します。
クラウド実行はローカル実行やCI実行よりも詳細な診断情報を収集するため、このコマンドはテスト失敗をより詳しく調査するのに最適です。
オプション
最低でも、次のいずれかのオプションを含めて、どのテストを実行するか指定してください。
| オプション | 説明 |
|---|---|
--id |
実行するテストのID |
--labels |
スペース区切りのラベルのリストに一致するテストを実行します。 |
--exclude-labels |
スペース区切りのラベルの一覧に一致するテストを除外します。 --labels オプションと併用してください。 |
追加の設定や上書きを行うには、コマンドにさらにオプションを含めてください。利用可能なすべてのオプションの詳細な一覧は、mabl tests run-cloud -h を実行して mabl CLI のドキュメントを参照してください。
一般的に使用されるオプションには、次のものがあります。
| オプション | 説明 |
|---|---|
--url、-u、--app-url、または--api-url
|
特定のURLに対してテストを実行する |
--environment-id, -e
|
特定の環境の変数と最新の検出情報を使ってテストを実行する |
--credentials-id、--creds
|
テストをmabl クレデンシャルに関連付ける |
--basic-auth-credentials-id, --basic-creds
|
テストをBasic認証のクレデンシャルに関連付ける |
--browsers, -b
|
どのブラウザーでテストを実行するかを指定します。デフォルトは Chrome です。 |
--mabl-branch |
テストのブランチ版を実行します。 |
出力
mabl CLIは、アプリ内でテスト出力を表示するリンクを出力します。
例
# Trigger a cloud run of a test that failed locally
mabl tests run-cloud --id {test-id}
# Trigger cloud runs of tests that failed in a CI build
mabl tests run-cloud --labels follow-upmabl tests run
ローカルマシン、またはCI環境で、1つ以上のブラウザーまたはAPIテストを実行するには、mabl tests run コマンドを使用します。mabl CLIは、クラウドクレジットを消費せずに、成功/失敗のフィードバックをすばやく返します。
ローカル実行とCI実行はすばやくフィードバックを得られるため、このコマンドはパイプラインの開発段階で個々のテストに対する迅速な反復やデバッグに理想的です。逐次実行のため、大規模なテストスイートではこのコマンドの効率は下がります。
オプション
最低でも、どのテストを実行するかを指定するために、次のいずれかのオプションを含めてください。
| オプション | 説明 |
|---|---|
--id |
実行するテストのID |
--run-id |
設定を取得するテスト実行のID |
--labels |
スペース区切りのラベルのリストに一致するテストを実行します。 |
--exclude-labels |
スペース区切りのラベル一覧に一致するテストを除外します。--labels オプションと併用してください。 |
--from-plan-id |
特定のプランに関連付けられたテストを実行します。 これはクラウドでのプラン実行とは同じではありません。ステージ、ブラウザー設定、共有された変数、データテーブル/クレデンシャルの上書きといった高度なプラン設定は適用されません。テストは順番に実行され、同じベースURLを使用します。 |
--from-plan-id で使用する指定のプランを作成する
--from-plan-id オプションは、詳細なプラン設定や並列実行には適用されません。このオプションを使う場合は、ステージが1つだけのローカル実行専用のプランを作成することをおすすめします。ローカル用に指定したプラン内のテストは、すべて同じベースURLを使用するため、種類はブラウザーまたはAPIのいずれか一方に統一してください。
追加の設定や上書きを行うには、コマンドにオプションをさらに追加してください。利用可能なすべてのオプションの一覧については、mabl tests run -h を実行して、mabl CLI のドキュメントを参照してください。
よく使われるオプションには、次のものがあります。
| オプション | 説明 |
|---|---|
--url |
特定のURLに対してテストを実行する |
--environment-id |
特定の環境の変数と最新の検出情報を使ってテストを実行します。 |
--headless |
ブラウザーを視覚的にレンダリングせずにテストを実行します。 |
--credentials-id、--creds
|
mabl クレデンシャルにテストを関連付けます。 |
--data-table-id または --scenario-id
|
データテーブルの1つのシナリオ、またはすべてのシナリオでテストを実行する |
--basic-auth-credentials-id, --basic-creds
|
テストをBasic認証のクレデンシャルに関連付ける |
--mabl-branch |
テストのブランチ版を実行します。 |
ブラウザサポート
ブラウザテストの実行は、あなたのマシンにインストールされているChromeブラウザを使用します。
異なるChromiumブラウザを使用するには、コマンドmabl config set browser.path [path-to-browser]を使用してブラウザパスを更新してください。ブラウザパスの設定を誤ると、ローカルテストの実行ができなくなる可能性があることに注意してください。
出力
デフォルトでは、mabl CLIは結果を直接ターミナルにのみ出力します。テスト出力の結果をmablアプリに公開するには、引数mablを指定して--reporterオプションを含めてください。
mabl tests run --id {test-id} --environment-id {env-id} --application-id {app-id} --reporter mablmablにローカル実行結果を公開する方法について詳しくは、統合レポーターに関する記事をご覧ください。
例
# Trigger a headless local run
mabl tests run --id {test-id} --headless true
# Trigger a local run for tests that match labels
mabl tests run --labels smoke needs-review
# Trigger local test runs associated with a plan
mabl tests run --from-plan-id {plan-id}mabl tests run-mobile
ローカルマシンで1件以上のモバイルテストを実行するには、mabl tests run-mobile を使用します。
このコマンドは、開発中にモバイル特有の機能について、成功/失敗のフィードバックを素早く得るのに最適です。順次実行のため、大規模なテストスイートでは効率が下がります。ローカルでのモバイル実行はクラウドクレジットを消費しません。
セットアップ
モバイルのテストをローカルで実行するには、モバイル開発用IDEからシミュレーターまたはエミュレーターへアクセスできる必要があります。
- iOS - iOSのテストをローカルで実行するには、使用するマシンにXCodeがインストールされ、利用可能なシミュレータが用意されている必要があります。
- Android - Androidのテストをローカルで実行するには、あなたのマシンにAndroid Studioがインストールされ、エミュレータが利用可能である必要があります。
テストの実行を開始する前に、Android と iOS アプリと連携するために必要なソフトウェアコンポーネントをダウンロードしてインストールするため、コマンド mabl config install mobile-tools を実行してください。
オプション
mabl tests run-mobile コマンドは、テストを実行するために 2 つの別々の情報が必要です:
- 実行するモバイルテスト
- テストの実行対象となるモバイルビルドのファイル
どのモバイルテストを実行するか指定するには、次のいずれかのオプションを使用してください。
| オプション | 説明 |
|---|---|
--id |
このIDに一致するモバイルテストを実行する |
--run-id |
設定を取得する対象のテスト実行のID。 このオプションを使う場合、モバイルビルド ファイルを指定する必要はありません。すでに実行構成に含まれています。 |
--labels |
スペース区切りのラベル一覧に一致するモバイルテストを実行する |
--exclude-labels |
スペースで区切られたラベルの一覧に一致するテストを除外します。 --labels オプションと併用してください。 |
--from-plan-id |
特定のプランに関連付けられたテストを実行します。 これはクラウドでのプラン実行とは同じではありません。ステージ、データテーブル、共有変数といった高度なプラン構成は適用されません。テストは順番に実行され、同じモバイルビルドファイルを使用します。単一のステージで実行できるモバイル専用のプランでのみ、このオプションを使用することをおすすめします。 |
モバイルビルドのファイルを指定するには、次のいずれかの方法を使います。
| オプション | 説明 |
|---|---|
--build-file-id |
mabl のワークスペース内のビルドファイルの ID。 |
--build-file-path, --app-file
|
ローカルのモバイルアプリケーションのバイナリへのパス。--platform オプションと併用します |
--platform |
ビルドに関連付けられたプラットフォーム: 「ios」または「android」。ローカルのビルドファイルパスを使用する場合は必須です。--build-file-id を使用する場合は不要です。 |
特定のデバイスでテストを実行するには、--device オプションを含めてください。
-
iOS - 使用可能なデバイスのID一覧を取得するには、ターミナルで
xcrun simctl list devicesを実行します。たとえば、iPhone 15 Pro でローカルにモバイル テストを実行する場合、オプションは--device 7F5FF587-4F9F-441D-BC5B-681E0AF2EA4Eです。 -
Android - 利用可能なデバイスの一覧(たとえば
Pixel_6_API_33)を取得するには、emulator実行ファイルがインストールされているディレクトリで./emulator -list-avdsを実行してください。場所は OS によって異なります。考えられる場所の例は次のとおりです:- macOS:
$HOME/Library/Android/sdk/emulator - Linux:
$HOME/Android/sdk/emulatorまたは$HOME/Android/Sdk/emulator - Windows:
$USERPROFILE/AppData/Local/Android/Sdk
- macOS:
すべてのオプションの完全な一覧については、mabl tests run-mobile -h を実行して、mabl CLI のドキュメントを参照してください。
出力
mabl CLIはテストの出力を直接ターミナルに表示します。
例
# Run a mobile test using configuration from a cloud run
mabl tests run-mobile --run-id {test-run-id}
# Run a set of iOS tests associated with the label "wip"
mabl tests run-mobile --labels wip --build-file-path {relative-path-to-file} --platform ios
# Run an Android test on a Pixel 9 device
mabl tests run-mobile --id {test-id} --build-file-id {build-file-id} --device Pixel_9_Pro_API_36