mablの導入効果をレビューでご紹介(YoshikiIto-株式会社カカクコム)
株式会社カカクコム / YoshikiIto
メンバー / QAエンジニア / エンジニア組織: 101名〜300名
利用プラン | ツールの利用規模 | ツールの利用開始時期 |
---|---|---|
エンタープライズプラン | 11名〜50名 | 2022年10月 |
利用プラン | エンタープライズプラン |
---|---|
ツールの利用規模 | 11名〜50名 |
ツールの利用開始時期 | 2022年10月 |
導入の背景・解決したかった問題
導入背景
mabl導入以前は手動テストが中心で、一部チームではSeleniumなどのOSSを活用したテストを行っていたが、テストの工数やメンテナンスの手間が掛かっていることが課題であった。そこで、システム本部内でテスト自動化の検討を開始した。最初の導入ターゲットとして価格.comを選択したが、価格.comは長く続いているサービスであり、レガシーな部分によってユニットテストの書きづらさが懸念され、E2Eテストの自動化から着手した。
比較検討したサービス
- Autify
- MagicPod
選定理由
- Selenium、Playwrightを利用している時は、テストのメンテナンスがしづらいなどの課題があったため、メンテナンスコストの低さを重視した
- オンプレの開発環境に対してアクセスする仕組みとして、mabl Linkが最もハードルが低かった
- アクセシビリティなどグローバルの視点で求められるような要素を取り入れるスピードが感じられた
- Autifyはモバイルのテストができたが、モバイルのテストよりも上記項目の方が優先度が高かった。MagicPodではテストを自動化する仕方が異なり、操作を記録するタイプの自動テストであるmablの方が自社では使いやすいと感じた。
- 海外の会社であったが、日本法人の立ち上げや一番最初のローカライズ対応が日本であるなど、日本市場を重視していた
導入時の苦労・悩み
当時は日本におけるmablの事例はまだ少ないフェーズだったが、カカクコム内では当時からGitHubを始め海外サービスを活用することは多かった。また、これから日本語対応を進めていくというmablのロードマップも見えていたため安心して導入することができた。
導入した当初は、技術的な部分はあまり困らなかったが、最初の1〜3ヶ月にmablを使い過ぎて、月間3000回実行という契約プランに対し、4000回以上テストを実行してしまうことがあった。自動テストを運用する際の勝手があまりわかっておらず、複数の端末のバリエーションでのテストを高頻度で実行した結果、実行回数がどんどんカウントされ、意図せず月間実行回数を超過して追加料金が発生してしまっていた。その後、mablでのテスト実行頻度を少なくするよう、当時利用していた部門に依頼した。その結果、逆に実行回数が余ってしまうなど、上手く運用していく上で失敗をした経験がある。
導入に向けた社内への説明
上長・チームへの説明
テスト自動化への取り組みの必要性に関して、本部長レベルで共通認識を持てており、事前に導入のための予算も確保していた。試してみてダメだったら止めれば良いという本部のカルチャーだったので、導入の際にはそこまで苦労はしなかった。
活用方法
よく使う機能
普段の使い方はチームによって異なる。リリース前に開発環境での開発が完了し、本番環境にデプロイする前にリグレッションテストをかける最終チェック的な位置付けや、開発環境で定期的にテストを実行したり、リリース直後の本番環境で問題がないか確認したりなど、チームのやりたいことに合わせたmablの活用をしている。
E2Eテスト
- mablにはAPIテストやAPIを使った負荷テストを行う機能もあるが、環境の用意が必要なためまだ活用できていない。GUIを操作して行うE2Eテストの機能を主に使っている。
レポーティングAPI
- 現状はmabl上で同一のワークスペースを複数のチームが使っている状態。月々に決められたテスト実行回数をチームごとに配分する機能がないため、各チームのテストの実行状況をレポーティングAPIを活用して共有している。
mabl Link Agent
- 自社でオンプレ環境を有しており、閉じた環境へアクセスするためのmabl Link Agentという仕組みを活用している。
ダッシュボードでの実行履歴の確認
- mablのダッシュボードにて、各チームのテスト実行状況や、失敗が続いている箇所がないかなどを日々確認している。失敗が続いている場合には、mablの使い方や運用方法など不明点・困りごとがないかフォローしている。
ツールの良い点
- 使い勝手の良さ
- mablは使い方が直感的でわかりやすく、チーム内の誰でも使えるツールだと思う。特にノーコードでテストを作成できる点、ブラウザからテストの実行や結果確認ができる点がポイント。また、mablはテスト自動化の初心者から、プログラミングスキルがある開発者まで、習熟度に合わせて活用できるところが良い。慣れた人なら、テストの共通ステップをまとめるフロー機能や、JSスニペット機能などを用いて効率的にテストを作成したり、複雑な手順のテストを自動化できたりする。
- カスタマーサポートの迅速で柔軟な対応
- サポートの返信が速い。サポートは日本語ネイティブでない方の対応ではあるが、日本語で問い合わせをしても翻訳機能を使って返事をしていただけるなど、柔軟な対応をとってくれる。
- 頻繁な機能アップデート
- 日本語対応もそうだが、Webのアクセシビリティやパフォーマンスのテストなど機能が増えていくのは非常に良いと思っている。組織内でmablの活用を推進していくうえで、新機能のリリースは良いきっかけになる。
- ユーザーコミュニティが盛り上がっている
- 機能の話とは別に、ユーザーコミュニティが活発になっているのも良い点。これを読んでくださっている皆さんとも、mablのユーザーコミュニティで一緒に自動テストの知見について共有しあえると嬉しいです!
ツールの課題点
- エンタープライズに寄せた機能が欲しい
- mablに限らず他のツールにも言えるが、複数チームでの利用におけるユーザーの管理・権限設定周りの機能を充実させてくれると嬉しい。他にも、作成した共有スニペットなどがアプリケーション間で相互に見えてしまうため、誤操作の危険があったり、プルダウンの中身が増えすぎて見づらいなどの課題もある。
- 日本語の入力が微妙なところがある
- たとえば、各テストのステップごとに説明文を書く欄など、日本語を入力する際にEnterで変換した瞬間に確定されて文字が入ってしまう。こうした、日本語を入力しづらい箇所は改善してほしい。
- クローラー機能の時間的制約
- mablにはテスト対象を登録すると、自動でサイトを巡回して、リンク切れがないかを確認してくれるリンククローラーの機能がある。我々のWebサービスではリンクが多いため、仕様上の上限である6時間が経ってもクロールが終わらずにタイムアウトとなってしまう。クロール対象を絞ったり、上限を延ばせたりなど、もう少し使い勝手が良くなると嬉しい。
その他
テストのメンテナンスで工夫しているところ
ログイン機能などmablとして共通化した方が良い部分をフローとして切り出したり、データテーブル機能を活用してテストのステップとデータを切り分けて管理したりといったmablとして推奨されている方法を取り入れている。また、細かい部分では、各テストのステップを作成する際に、要素が変更されても影響を受けにくい方法を選択し、壊れにくいテストを作成するよう意識している。
ツールを検討されている方へ
私自身、過去にはある程度運用が進んでいて手動テストをずっと続けていたシステムに対して、自動テストを後から大規模に導入して大変だった経験があります。
できれば、ミニマムなプランからでも良いので早い段階からテスト自動化の仕組みを導入することをお勧めします。
週2回や毎日など、頻繁に自動テストを実施することで、問題を早期に発見することができます。
また、ある自動テストの実行から次に実行するまでに長い期間が空いてしまうと、テストを修正するのに多くの時間が掛かることがあります。
テストが正常に動く状態を保つためにも、実行頻度を確保することが重要です。
少しずつテストを回していきながら、開発環境へデプロイする度にリグレッションテストを実施したり、本番環境にデプロイした際にも新規追加や改修部分の手動テストに加えて他の部分のリグレッションテストをしたりと、複数の段階で自動テストができると安心です。
一方で、自動化以前にやるべきことがまだまだ存在する状態の場合は、テスト自動化ツールは必要ないと思います。あまりにもプロダクトの品質がよくない時や、テスト自体のやり方が固まっていない時は、ツールを入れても上手くいかない可能性が高いです。テストのやり方がある程度チー ム内で固まってから自動化を検討すると良いと思います。
株式会社カカクコム / YoshikiIto
メンバー / QAエンジニア / エンジニア組織: 101名〜300名
大学院を修了後、QAエンジニアとして10年間ソフトウェアテストや品質向上を担当。 うち直近4年は社内での自動テストの推進活動に携わる。2023年1月カカクコムに入社、システム本部の開発者体験向上を目的とするチームでQAエンジニアを務める。
よく見られているレビュー
株式会社カカクコム / YoshikiIto
メンバー / QAエンジニア / エンジニア組織: 101名〜300名
大学院を修了後、QAエンジニアとして10...
レビューしているツール
目次
- 導入の背景・解決したかった問題
- 活用方法