オンプレミス環境でmablを動かせる"mabl Link"を使ってみる


自動テストSaaSはクラウドツールという特性上、プライベートネットワーク(オンプレミス)環境上のアプリケーションに対してテスト実行できないことがしばしば。固定IPを振ってファイアウォール等の設定をしたりするのもぼちぼち面倒ですよね。

しかしmablにはmabl Linkという専用のトンネリングツールが用意されており、オンプレミス環境のサーバ上で動作するアプリケーションに対して簡単にテスト実行をすることができます。
この記事ではその具体的なやり方を解説します。

mabl Linkの仕組み

mabl Linkの仕組みについては公式ガイド: Secure tunneling with mabl Linkの画像がとてもわかりやすいのでこれを引用させていただきます。

この画像にある通り、"mabl Link Agent"というトンネリングツールを、プライベートネットワークに接続した端末上で動作させることで、mablクラウドから端末を経由してテスト対象のアプリケーション(SUT)にアクセスするというものになります。

使い方

ここからは公式ガイド: Using mabl Linkに沿って作業を進めます。

前提条件

  • mablのアカウントがある
  • Dockerをインストール済である

今回mabl Link AgentはDockerを利用して動作させます。先にDockerをインストールをしておいてください。

1. WorkspaceにアクセスするAPIキーを作成する

mablにログインし、Setttings > APISと進みます。
緑色の"CREATE API KEY"ボタンを押します。

"Type of API key"の項目は"Link Agent"に、"Name"は任意のものに設定しCREATEを押します。

そうすると設定したNameでAPIキーが発行されるので、Keyをコピーしてメモ帳などに控えておきます。

2. Link Agentの実行

続いてLink Agentをダウンロードし実行します。
なお、この手順は公式ガイド: Link with Docker、及びDockerHub: mablhq/link-agentに記載されています。

まず次のコマンドをメモ帳などにコピーします。

docker run mablhq/link-agent --api-key <your-api-key> --name <agent-name>

次に、<your-api-key>となっているところを手順1で控えたAPIキーに、
<agent-name>となっているところは任意のものに書き換えます(手順1で設定したNameと同じにするのがよいかもしれません)。

最後に書き換えたコマンドをコピーし、任意のシェルで実行します。
するとLink Agentを勝手にダウンロード・インストールし、実行してくれます。

3. mabl上でLink Agentの接続を確認する

念の為mabl上で接続を確認しておきましょう。
Settings > NETWORKINGに進むと、ページ下部に手順2で設定したagent-nameが表示されているはずです。ここのStatusがConnectedになっていればLink Agentがmablに認識された状態になっています。

4. Link Agentを使うEnvironmentとApplicationを設定する

続いてmablからLink Agentに対して命令を出せるよう、実行環境に相当するEnvironmentを設定します。
mabl上でConfiguration > APPLICATIONSと進み、緑色の"New"ボタンからEnvironmentを新規作成します。

この際、Advancedの設定にある"Use link agent"の項目にチェックをし、先ほど手順3で表示を確認したagent-nameを選択します。
こうすることでこのEnvironmentを指定したテストは全て端末上のLink Agentを介して実行されることになります。

Environmentの作成ができたら続いてApplicationの設定です。
同じくConfiguration > APPLICATIONSの画面で、
今作成したEnvironmentとテストを作成したいApplicationがクロスするセル上のEditボタンをクリックし、プライベートネットワーク上のアプリケーションのアドレスを記載します。

これで全ての準備が完了しました。

5. あとはテストを作るだけ!

あとは通常のパブリックネットワーク上のアプリケーションと同じようにテストを作って、
Environmentに手順4で作成したLink Agentを指定したものを指定して実行するだけです。

ね、簡単でしょ?

最後に:なかなかすごいぞmabl

この記事ではmablをオンプレミス環境でも簡単に利用可能にするmabl Linkという機能の使い方を紹介しました。
この機能の存在がツール採用の決め手になる会社さんも多いのではないでしょうか。

まだ日本ではあまり知られていないツールですが、非常に優秀で将来性のあるツールだと思います。気になる方は是非トライアルを。
またコミュニティウェビナーもあるそうなのでこちらも是非。