テスト自動化ツール mabl導入!

Jinichi Ozaki
nextbeat-engineering
Dec 19, 2022

こんにちは。ネクストビートでエンジニアをしている尾崎です。
普段の業務では人材紹介サービス「おもてなしHR」の開発をしています。

最近、弊社ではテスト自動化ツールとして、mablを導入しました。

導入の経緯としては、以下の理由となります。
・エンジニアのテスト工数の省力化
・リグレッションテストによる品質の向上
・テストシナリオを見ることで各プロダクトの機能把握を可能に

まだまだ導入直後ということもあり手探りな状態ではありますが、今回はそんなmablの機能を紹介していこうと思います。

mablとは

mablはローカル・クラウド上で実行可能な、UIおよびAPIテストの自動化ツールです。
mablトレーナーと呼ばれる、シンプルで直感的なUIのアプリを使用することによりローコードテストを作成できます。

mablトレーナはアプリをインストールする方法とは別に、Chromeにプラグイン入れるのみでも使用可能になることから、導入コストが非常に低いものとなっています。

テストケースを作成する際は、mablトレーナーと連携したブラウザで実際に操作を行うだけで、テストのベースを作成できるため、初期コストが低いことも魅力の一つです。

mablトレーナーの操作画面

mablの特徴

・クラウド実行によるクロスブラウザ/モバイルウェブテスト

例として、ユーザの操作によってパターンが分かれる複雑な要件の場合、「パターンの数 × 対応ブラウザの数」のテストが必要になります。
こちらを手作業で行うとなると、かなりの時間が必要になる上に、人為的なミスが発生する確率も上がります。

mablを使えば、Chrome / Edge / Firefox / IE / Safariの5つのブラウザを、一つのテストケースで同時にテストを行うことが可能です。

とはいえ全ての機能が全てのブラウザに対応している訳ではなく、後述する「視覚的な変化の検出」などは一部のブラウザのみにしか対応しておらず、注意が必要です。

また、モバイルのテストはChromeのエミュレータを使用しています。
様々なOSに対応しているため、Webアプリをテストする際も安心です。

・アプリケーションの変化に対応し、テストを自動修復

UI/UXの向上のため、ページのデザインを変えることは開発している上で必要不可欠です。

よくある例として、ページ内のどこかのボタンの位置を調整し、それがテストに関係のあるボタンだった場合、mablはAIによる自動修復を行い、テストを動的に適応させます。

この機能により、せっかく作ったテストが意味をなさなくなり、その度に修正のコストがかかる or 使わなくなる、といったことがなくなります。

・スクリーンショットによる視覚的変化の検出

mablはテスト中、ボタンのクリックやフォームへの入力などの操作を行う度に自動でスクリーンショットを撮影します。
そして約10回のテストを実行することで、ベースラインと呼ばれる基準点を作成し、その後のテストからベースラインと新規のスクリーンショットを比較することでデザインの違いを明確にしてくれます。

意図しない変更を検知してくれるというのはリリースの安全性を高めてくれ、非常に助けになる機能となっています。

なお現状、対応しているブラウザはChromeのみ。
ステータスコードのチェックを兼ねているビジュアルスモークテストと呼ばれる機能の場合はChrome / Edgeのみとなっているため、注意が必要です。

視覚的変化部分を赤く表示

・データテーブルを用いたデータドリブンテスト

mablはデータテーブルを作成し、mablトレーナー内の変数として扱うことが可能です。
例えば入力フォームのValidationチェックをしたいなと考えたとき、エラーパターン分の入力項目が記載されたデータテーブルを使用することで、同じテストケースを扱いながら複数パターンのテストを並列で行えます。

電話番号の入力パターンとエラー文のデータテーブル

mablを導入してみて

私自身、外部のテストツールを使うのは初めてで、導入時は使いこなせるか不安な部分もありましたが、機能を知るたびにその便利さに驚きました。

上記以外にも様々な機能がmablには存在しますが、個人的に一番助かっているのは、サポートチームと簡単に連絡が取れることです。

アプリ内にサポートチームとチャットを行える機能があり、メッセージを送信後、基本的には5分以内の即時返答、質問の内容によってはエンジニアリングチームに確認、及び調査の依頼をしていただけます。
ドキュメントも手厚いですが、やはり会話による解決はスピード感もあり、時には知らなかった機能を提示してくださるため、大変助かっています。

現在はまだ、テストパターンの作成に工数を割かざるを得ない状況ですが、今後mablを活用することで、時間短縮できる未来にワクワクしています。

最後に

今回は、簡単にですがmablの機能についてお話しさせていただきました。

mablを導入する際、社内ではトライアル期間を活用し、果たして弊社のプロダクトでは効果的なのかを確認しました。
私も導入に賛成であり心待ちにしていたところ、結果としてその翌月にmablが導入されました。

ネクストビートではこのようなスピード感で物事が進んでいきます。

今後もmablに関する知見等や、別途のツールが導入された際は、情報発信していければと考えています。

最後まで読んでいただき、ありがとうございました!

We are hiring!

株式会社ネクストビートでは

「人口減少社会において必要とされるインターネット事業を創造し、ニッポンを元気にする。」
を理念に掲げ一緒に働く仲間を募集しております。

https://www.nextbeat.co.jp/recruit

--

--