市場ニーズの変化の加速に伴い、既存サービスに新機能や修正を加える機会も増えています。ある著名なSaaSでは、新機能を週2回定期リリースしているといいます。
このように頻繁にリリースをしたい場合テストの負担が大きくなるという課題があります。
新機能や修正を加えてリリースする際、それらの機能が既存機能に影響を与えていないことを確認する「リグレッションテスト」は重要です。しかし、機能追加でシステムが大きくなるに従い、テスト項目も膨れ上がってしまい、手に負えなくなってしまうケースは 多いのではないでしょうか。
特に、E2Eテスト(UIテスト)は不具合が多く見つかる一方で、人の手によるテストが主流となっているためテスト実施の負担が大きくなります。そこで注目されているのが、テスト自動化です。
ローコードで自動テストが作成可能、mablの特徴とは
近年注目を集め、日本国内でも導入数が伸びているのが「ローコード」でE2Eテストを自動化できる「mabl(メイブル)」です。その特徴を紹介しましょう。
mablの特徴(1)簡単に始められる
mablはクラウドで提供されるテスト自動化ソリューションです。簡単な登録作業とセッティングのみで始めることができ、テスト操作を「mabl Trainer」で記録するだけでコーディングの知識がなくても自動テストのシナリオを作成できます。さらに、mablはコーディングができれば独自の拡張もできる自動化ツールなので、幅広いニーズにこたえてくれます。
mablの特徴(2)AIでテストケースを自動修復・変化を自動検知
自動テストを継続して実行するためには、テストコードのメンテナンスが欠かせません。ちょっとしたUIの変化でもテストコードを手で修正するのは大きな負担となります。その点、mablはUIの変化をAIが自動学習してテストケースを自動修復する「Auto Healing」機能によって運用負担を軽減してくれます。また、テスト中にWeb画面のスクリーンショットを自動取得し、画面崩れなどの変化を自動的に検知する「Visual Regression」機能もあります 。
mablの特徴(3)多様なテストに対応
メールやクロスブラウザテスト、APIテストなどのテストのほかに、パフォーマンステストや、リンククローラーによるスモークテストの機能も装備しています。また、モバイルWebテストにも対応し、レスポンシブWebアプリケーションのE2Eテストを自動化できます。
mablの特徴(4)テスト結果を多角的に確認可能
mablで自動テストを実行すると、様々な情報が収集されます。各ステップのアサーション結果、スクリーンショット、DOMスナップショット、ネットワークアクティビティ、mablアクティビティ、JavaScriptエラー、テスト実行時間など、様々な角度でテスト結果が確認できます。
mablは本当に簡単か?非プログラマーがmablを体験
mablの特徴を詳しく見る前に、まずはどのぐらい簡単に使えるのか14日間の無料トライアルを利用して実際に体験してみましょう。
下記サイトに遷移し、氏名、メールアドレス、会社名を入力し、無料トライアルを始めます。登録したアドレス宛に届いたメールで本人確認し、パスワードを設定したら準備完了です。
https://www.mabl.com/trial-registration
mablは、Web上でもある程度の操作ができますが、テストの作成や運用、管理をシームレスに行うためにデスクトップアプリを用意しています。Web上からmablにログインした後に、デスクトップアプリをインストールしましょう。インストールが完了したら、登録したメールアドレスとパスワードでログインします。
画面左上の「New test」をクリックし、「Browser test」、または「API test」を選択します。今回はBrowser testを選択して、テストしたいサイトを指定して先に進みます。
ブラウザでテスト対象サイトが開くので、あとはテストしたい内容を手動で操作するだけで操作内容が記録されます。操作が終了したら、「Save」「Close」をクリックすればテストシナリオが保存されます。
記録したテストは、サイドバーの「Test」から開いて編集でき、「Run test」でいま作った自動テストをすぐ動かすことができます。
自動実行したテスト結果は、サイドバーの「Results」から確認できます。
ここまでかかった時間はわずか10分程度。このように、コーディングの知識がない人間でも、簡単に自動テストを作ることができました。
エンジニアが使えばここまでできる
コーディングの知識がなくてもテストを自動化ができるmablですが、エンジニアとしての知識やコーディング技術があればさらに踏み込んだ活用ができます。
APIテストの自動化
mablは、E2Eの自動テスト化だけではなく、APIテストの自動化にも対応しています。一般的なAPIテストならコーディングなしで自動化できますが、JavaScriptを使ってより複雑なAPIテストとトラブルシューティングのシナリオが作成できます。また、APIテストで変数を使用してデータ駆動型のテストを実行し、動的データの操作を必要とするようなシナリオ処理も可能です。
条件分岐の利用
mablは、IF、ELSE、およびENDステップを使用して、ステップやフローのグループを条件付きで実行することができます。例えば、データ編集系のテストで「もしデータがAならBを入れる」、または「データがBならAを入れる」という分岐があれば、テスト失敗時にデータを直前の状態に戻す必要がなくなり、そのまま再実行可能なテストを作ることができます。
mablの利用者は日本でも増加中
海外製のツールなので導入ハードルが高い印象のあるmablですが、ここ数年で日本での導入事例も急増しています。mabl社からも『2020年には、日本の顧客数を425%、売上高を約500%増加させるとともに、日本のコミュニティのメンバーを850人以上に拡大した』との発表があり、導入数は現在も伸びています。
手軽さだけでなく、JavaScriptを利用することでより高度なテストも実現できる注目のテスト自動化サービスです。日本語でのサポート体制もありますので、興味のある人は体験してみてはいかがでしょうか。