こんにちは、現在QAエンジニアをしている白々さじきです。
先日、「ソフトウェアテスト自動化カンファレンス2024」に参加しました。
本記事では、セッション「MagicPodでモバイルアプリの“自動テスト”を最速で立ち上げよう」の内容を共有します。
このセッションでは、MagicPodとBitriseを活用した自動テストの立ち上げ・運用方法や、導入時の課題と解決策が紹介されました。
MagicPodの特徴
MagicPodは、モバイルアプリおよびウェブアプリの自動テストを支援するクラウドベースのAIプラットフォームです。プログラミングの知識がなくても、ノーコードやローコードでテストの自動化を実現できます。
主な特徴
- 幅広いプラットフォーム対応:iOS、Android、Flutterといったモバイルアプリや、主要ブラウザでのテストが可能
- AIによる自動化支援:画面上の要素を自動検出し、スクリプト作成や修正をサポート。UI変更時のメンテナンス負担を軽減
- クラウドベースの利便性:複雑なインストール不要で、テスト環境を迅速に構築可能
- 豊富な機能:データ駆動テスト、条件分岐、変数管理など、柔軟なシナリオ構築をサポート
Bitriseの特徴
Bitriseは、モバイルアプリ開発者向けのクラウドベースの継続的インテグレーション(CI)および継続的デリバリー(CD)プラットフォームです。モバイルアプリの自動ビルドやデプロイ、テストの効率化をサポートします。
主な特徴
- 幅広いフレームワーク対応:iOS、Android、React Native、Flutterなど主要なモバイルアプリ開発フレームワークに対応
- 柔軟なワークフロー構築:ステップやパイプラインを組み合わせ、ビルドプロセスを柔軟に設計可能
- 豊富なインテグレーション:300以上のステップやツールとの連携機能を提供。主要なGitサービスやその他のツールとの統合が可能
- 自動化による効率化:ビルド、テスト、デプロイの各プロセスを自動化し、開発のスピードを向上
導入時の課題と解決策
セッションでは、MagicPodとBitriseを活用する際に直面した課題と、その解決策についても紹介されました。
MagicPodでの課題と解決策
- 課題:UI要素の特定が困難
- 問題:テキストやロール指定で取得できない要素があり、テストが作成できなかった
- 解決策:開発者と連携し、要素を特定しやすい改修を実施
- 課題:過剰なテスト作成
- 問題:リグレッションテストで一気に作りすぎた結果、メンテナンスが困難に
- 解決策:テスト範囲を絞り、重要なケースに集中する運用へ変更
Bitriseでの課題と解決策
- 課題:予算不足
- 問題:日次実行するためのクレジットが不足
- 解決策:実行頻度を調整し、コストを削減
- 課題:ビルドエラー
- 問題:Bitriseでシミュレータを使用したビルドが失敗
- 解決策:アプリを修正し、シミュレータでのビルドを可能にした
自動テスト運用に向けたポイント
セッションで紹介された運用のポイントは以下の通りです:
- 準備段階
- 予算や必要なリソースを事前に確認
- 簡単なアプリ操作をカバーする基本的なテストから始める
- 開発チームと連携し、要素の特定や環境構築を調整する
- 運用の習慣化
- フィードバックサイクルを定着させる
- テスト範囲を過度に広げず、必要な部分に絞ることで健全性を維持
- 失敗原因を共有し、チーム全体で学びを得る仕組みを構築
感想
セッションを通じて、MagicPodとBitriseを使うことで素早くモバイルの自動テストを作成することを学ぶことができました。
また、課題解決には開発チームとの連携が欠かせないことを改めて認識しました。
特に、自動テストの運用をスムーズにするために、フィードバックを習慣化し、運用を健全に保つ仕組み作りの重要性を学びました。
これらの知見を元に、まずは自動テストではなく、自社のリグレッションテストのフィードバックを習慣化し、テスト内容に関しての運用を健全に保つ仕組みづくりを行いたいと思いました。
資料
また、下記リンクから買い物していただけると白々のお小遣いが増えて色々な有料サービスを使ったブログ記事を書きやすくなるので、ご協力よろしくお願いします!!!
コメント