mablの実行方法と実行環境の違いはなんですか?

mablには利用者のニーズに合わせてさまざまな実行方法と実行環境を用意させていただいております。このページではそれらの違いについて解説させていただきます。

mablの実行方法

mablの実行方法は以下になります。

  • トレーナー上での実行
  • デスクトップアプリからの実行
  • mabl CLIからの実行

現在ベータ版ですがCIで実行するために使えるCI Runnerもあります。

それぞれ違った特徴を持っています。

トレーナー上での実行

トレーナーはテスト作成やメンテナンスで利用します。通常はTrainerを使ってブラウザ操作を記録し、テストを作成したり、メンテナンスします。

1319

デスクトップアプリ版トレーナー。ブラウザから分離した状態で実行可能

トレーナーのいいところはその柔軟性です。Trainerによって操作を記録するのと同時に、プログラミングの知識がなくとも、「もしも」を入れたり、「変数」を使ったりして、簡単にテストを作成できます。

トレーナーは誰にでも親切ですが、とくに

  • プログラミングが苦手な方
  • GUIで簡単にテスト作成したい方
  • テストを作りながら、動かしながら動作確認したい方

にぴったりなツールです。

参考: Installing the mabl Trainer

デスクトップアプリからの実行

デスクトップアプリからローカル実行、クラウド実行ができます。

ローカル実行は、後述するCLI実行と似ており、ローカル環境で高速実行できます。ブラウザを起動しての実行も、Headlessモード(ブラウザ非表示)での実行も可能です。トレーナーとは違い、完成しているテストを通しで実行したい場合にぴったりです。

クラウド実行は後述のように、mablのクラウド環境を使ったテスト実行です。専用コンテナの立ち上げなどのオーバーヘッドはありますが、Auto-healやスクリーンショット取得といったクラウドならではの機能を活用できます。

mabl CLIからの実行

mabl CLIはその名の通りCLI(コマンドラインインターフェース)です。とくにエンジニアの方が使い慣れたUIになっています。

CLIからは様々な操作を実行できますが、テスト作成などに関しては、トレーナーに比べるとできることが限られています。

ただし、CLIならではのメリットもあります。

たとえば、CLIを通してテスト実行が簡単にできるため、余っているPCにJenkinsを入れて、CLIを通してテストを継続実行する等できます。しかも、ローカル実行は無制限なので、予算を気にすることなく実行できます。

参考: mabl CLI overview

🚧

ローカル実行・CLI実行はとても高速です

ローカル実行は高速に動作するため、タイミングのずれによるテスト失敗が発生しやすくなります。テストで画面遷移やモーダル表示があるタイミングにおいて、WaitUntilを使い「〜〜が表示されるまで待つ」ようにしてください。

mablの実行環境

mablの実行環境は2種類あります。

  • ローカル環境
  • クラウド実行

ローカル環境

ローカルとは、デスクトップアプリを開いているPCやラップトップを指します。また、CLIがインストールされた、mablクラウドとは別の環境も、クラウドと切り分けるため「ローカル」と呼んでいます。

ローカルでは前述の方法でテスト実行できます。

  • mablトレーナーを利用したローカル環境でテスト実行
  • デスクトップアプリからのローカル環境でテスト実行
  • mabl CLIを利用したローカル環境でテスト実行

mablトレーナーを利用したローカル環境でテスト実行

mablトレーナーを利用したローカル実行は、テスト作成時や修正時の動作確認にとても役立つはずです。

ノーコード・ローコードでテストを作成・修正でき、ボタンをポチッと押すだけで簡単に実行できます。途中で実行を止めたり、特定のステップに移動して実行も簡単にできます。

658

巻き戻し、再生、早送り・・・と音楽プレーヤーのようなUI。「このステップだけ実行(Play step)」や「ここから実行(Pkay through here)」も可能です。

デスクトップアプリからのローカル環境でテスト実行

2372

CLIのようなターミナル画面が開きます。

デスクトップアプリからローカル実行すると、ターミナルのようなメッセージ画面が表示され、次々とステップが実行されます。

CLI実行のように高速で実行可能です。

 mabl CLIを利用したローカル環境でテスト実行

より高速にローカル実行したいなら、トレーナーではなく、mabl CLIが適しています。

たとえば、オフィスにあるMac miniでJenkinsを起動し、作成したJobからmabl CLI経由でテスト実行・・・と言った環境構築が可能です。しかも、実行回数は無制限です!

クラウド実行でクラウド環境でテスト実行

クラウド実行を使えば、テスト実行環境の構築や運用から開放され、より「テスト」やそれ以外の活動に集中できるようになります。

クラウド実行の恩恵として、

  • クロスブラウザテスト
  • オートヒール機能
  • スクリーンショットやその他データ保存

が可能になります。

mablの実行方法と実行環境のまとめ

ここまでの内容をまとめてみます。

実行方法と実行環境

想定する利用目的

想定する利用者

実行タイミング

メリット

デメリット

トレーナー(ローカル環境)

テスト作成や修正のときなど。

誰でも。特にプログラムが得意でない方向けのUIです。

テストの動作確認時など。

  • 見ながら実行できるので動作がわかりやすい
  • テスト作成しながらの確認がステップ単位で簡単に可能
  • 動作がやや遅い
  • クラウドで可能なクロスブラウザ、自動修復(オートヒール)等が動かない

デスクトップアプリ(ローカル環境)

完成したテストを通しで実行したいときなど。

誰でも。ブラウザを見ながら確認もできます。

テストの動作確認や開発途中の確認など。

  • 見ながら実行できるので動作がわかりやすい
  • ヘッドレスブラウザ指定で動作が高速
  • クラウドで可能なクロスブラウザ、自動修復(オートヒール)等が動かない

CLI(ローカル環境)

完成したテストを通しで実行したいときや、CI/CD連携する場合など。

ターミナル操作に慣れたエンジニアや、ローカル環境での実行用。

テストの動作確認や開発途中の確認など。

  • ヘッドレスブラウザ指定で動作が高速
  • ローカルのCIに組み込めばいくらでも定期実行可能
  • クラウドで可能なクロスブラウザ、自動修復(オートヒール)等が動かない

クラウド実行(クラウド環境)

ローカルで成功したテストの最終確認や定期実行用。

開発チーム。Planの設定により定期実行も可能。

デプロイ時やリリース前の確認など。

  • クロスブラウザ、自動修復(オートヒール)、スクリーンショットなどのデータ保存が可能
  • 定期実行された場合、パフォーマンスログ等もすべて保存される
  • コンテナ起動などで動作が遅い
  • 実行回数がカウントされる

Test execution overview