Safie Engineers' Blog!

Safieのエンジニアが書くブログです

QCDグループで使っている自動テストツール(MagicPod編)

この記事はSafie Engineers' Blog! Advent Calendar 19日目の記事です

こんにちは。2023年3月にセーフィーにジョインした入社一年目のQCDグループの森重です。

入社してからはカメラの対応機種拡大やマイページ、モバイルアプリと様々な領域・プロダクトにQAとして携わっていて、テスト設計や手動テストの実行だけでなく自動テストにも取り組んでいます。

この記事ではQCDグループで取り組んでいる自動化、特にMagicPodに焦点を当てて、QCDグループがMagicPodでどんなテストを自動化しているかをお話できればと思います。

MagicPodについて

そもそもMagicPodとはなんぞや?という方もいると思うので、簡単にツールについて説明します。

MagicPodは有償のテスト自動化ツールでWeb・モバイルに対応したE2Eテスト自動化ツールとなっています。

他の自動テストツールと比べて優れていると思うのは、自動テストの実行回数に制限がない点、メンテナンス性を確保し易い点です。

実行回数に制限がないので、毎日自動テストを実行したいプロダクトに向いているツールと言えます。

自動テストの目的

次にQCDグループで自動化に取り組んでいる目的ですが、これはテスト実行回数増加と広範囲化でバグの早期検出とバグ検出件数増加のためです。

MagicPodに決まったテストを毎日実行させることでエラーを早期検出し、今までリスクベースで切り捨てていたテストもやってもらうことで、カバーできる範囲を増やすようにしています。

自動テストのスコープ

対象のテストは、ずばりリグレッションテストになります。

テスト対象の変更が少なくメンテナンス性の確保が比較的容易なことが大きな理由です。逆にE2Eテストで自動化しないほうが良いのは頻繁に変更が入る新規機能だったり、変更が入りやすい画面を対象としているテストケースです。

実際の画面をお見せするとこんな感じです。失敗しているテストケースもありますが、定期実行して毎日結果をモニタリングしています。

メンテナンスはチームで毎日持ち回りで担当していて、日々やっているという感じです。

新機能:ヘルススコア

少し話はそれてしまいますが、先日のMagicPodのメジャーバージョンアップで追加されたアナリティクスで自動テストのヘルススコアを算出してくれます。参考までにマイページのヘルススコアを紹介しておきます。

マイページ

マイページではヘルススコア89です。このプロジェクトはQCDグループの中では後発で自動化を勧めており、パイロットプロジェクトでの運用経験からメンテナンス性を重視したテストケース作成をしています。

特にMagicPodの機能の中でも共有ステップ・変数は様々なテストケースの中の手順を一つの共有ステップで集約することで、テストケースのメンテナンス性・可読性が狙えるため積極的に活用しています。

メリット/課題

一通りテスト対象や運用については書き終わりましたのでMagicPodを自動テストに取り入れたことで感じているメリットと使い続ける上での課題についてもここに書いておきます。

MagicPodを導入したことで感じたメリット

  • 早期バグ検出に役立つ

  • テスト環境を広げたことによるバグ検出ができた

メリットですが、こちらはMagicPodを導入した当初の狙い通り、バグ検出関連の恩恵が大きいです。

MagicPodを使い続ける上での課題

  • テストケースの作成
    テストケースの属人化
  • テストケースの管理・メンテナンス
    共有テストケースの活用不足、メンテ工数増
    自動テストの実行結果をTesrailに自動でインプットできていない
  • テスト分析
    データ分析用の基盤の立ち上げができていないのでスピード感を持った分析が困難
  • 教育
    教育資料がなく、ジョインされた方も自己流で学ぶ必要がある

一方課題ですが、MagicPod利用上のルールやそのデータを活用できていないことが多く挙げられています。今後の改善活動として取り組んでいく予定です。

最後に

以上、QCDグループで使っているMagicPodについて紹介させていただきました。

当初狙っていた効果は一定得られているものの、まだまだ課題が残っていますので、継続して改善が必要そうです。

MagicPodにとどまらずテスト自動化について今後もテックブログで発信していきますので、よろしくお願いします。

© Safie Inc.