Web向けテスト自動化サービス「mabl」を試してみた

Web向けテスト自動化サービス「mabl」を試してみました。mablはChrome拡張を使ったキャプチャリプレイ系テスト自動化サービスですが、API呼び出しや分岐など、かゆいところに手が届くSeleniumIDEといった印象でなかなかいい感じ。

テスト自動化サービスが注目される理由

従来型のQA・テストサービスは、人やチームをアサインしてマンパワーでなんとかするスタイルが多いと思います。企業も「品質 = テスト」や「品質 = QA」とすりこまれてしまい、品質が話題になったら「QA組織が必要だ!」になりがち。これはとても大きな間違いだと思います。

そして、どの業界も人手不足となり、この「マンパワーでなんとかする」がうまく機能しなくなってきました。僕の周囲でよく聞くのが「テストベンダーに頼んだけど、バイトレベルがアサインされて逆に管理コストが大きい」といった話。

高いお金払って苦労するぐらいなら、「mabl」のような今風のWeb向けテスト自動化サービスを使ったほうが良いと思います。こういったサービスを活用してテストエンジニア・QAエンジニアの生産性を高めていく・・・というのは今後のトレンドになるかもしれません。

mabl

ではいよいよ mabl を調べていきます。ちょっと前に調べたんですが、だいぶ進化していますね! mabl は14日間のフリートライアルがついています。説明はすべて英語なので、間違った解釈があるかもしれませんがご了承ください。

サイト: https://www.mabl.com/

用語集

参考: Key concepts

  • Journeys: テストシナリオ。レコーディングした一連の流れ。
  • Plans: いつどこで実行するかを表したもの。テストシナリオを複数含めらられるのでテストスイートにも似ている
  • Trainer: テストレコーダーであるChrome拡張 mabl Trainerを指します

mablでできること

上記が mabl Trainer の画面です。これをみれば何ができるか? (つまり、何をレコーディングできるか?)がわかるとおもいます。

  • Flows: プログラミングで登場する関数のように、再利用できるステップの流れ
  • Conditionals: 条件分岐
  • Cookies: 最近話題のクッキー
  • Japascript: JSの実行。APIの呼び出しにも使えそうで、細かい制御に活用できそう
  • Mailbox: 受信したメールのチェックも可能。たぶん、mablでメールを受信することでテストシナリオに埋め込めるようにしているのかな
  • API request: テストデータ作成やステータスを進めるといったAPI制御もできる
  • Wait: あんまりつかったらだめだけど、たまに必要なところありますよね
  • Visit URL: URLを開く
  • Echo: ログにメッセージを吐き出す用。実行ログを読みやすくできそうね

その他できること

  • シナリオテストの自動化
    • 並列実行、直列実行を選べる
    • 定期実行可能
    • DEV・STG・PROといった環境選択可能
    • レポーティング
  • リンク切れチェックの自動化(初期自動的にこのJourneyができる)
  • AI的なものも入っていそうだけどあんまりわからず

レコードするとこんな感じでTrainerにぽちぽち記録されていきます。

実行結果は上記のように、キャプチャやそのときのDOMツリー状態、パフォーマンスまで保存してくれるようです。

シナリオのバックアップはmablが責任を持ってやってくれそうですが、サービスがいまいちだったときの逃げ道として、JourneysをCSVダウンロード可能。

やっぱり気になるのは、『システム自動化 標準ガイド』の冒頭に書かれているように「キャプチャーリプレイはテスト自動化ではない」という指摘。

繰り返しのマニュアルテスト作業を自動化するツールとしてはいいかもしれないけど、より効率よくやるにはまだ厳しいかもしれませんね。

さっくり使っただけですが、基本的な機能は網羅されているようなので、自力でWebDriveなり書くよりはハードルは下がっているように思います。

また、『クロスブラウザテストの闇と闇と闇』にかかれているように、サービスを使うとブラウザを選択するだけでよしなに動いてくれるので、さらに利用のハードルは下がるように思います。

品質組織として先回りしてビジネスに答えるには、こういったmablのようなサービスを開発するか、あるいは利用できるメンバーを増やすのも手です。自動化に取り組むハードルが高い場合はなおそっちのほうがいいかもしれません。

個人的に、マニュアルテストをひたすらやるのは時代遅れです。僕がマネージャならメンバーに「それを一生やりたいか?」と問いかけるでしょう。

さらにいうと、誰にでもできる内容であればスキルとしての価値も下がり、自動化によってテスターの仕事がなくなる時代も近いかもしれません。

タイトルとURLをコピーしました
:)