導入初期によくある質問や操作のコツについて紹介します。まだMagicPodを使ったことがない場合は、まずはスタートガイドを参考にしてください。
目次
テスト作成
UI、UI要素などMagicPod特有の用語がわからない
スタートガイド:4 - 5.用語説明で詳しく紹介しています。
UI要素が選択できない
該当のUI要素の上に、他のUI要素が重なっていて選択できていない可能性があります。「一時的に隠す」を何回か行うことで上に重なっている要素を隠し、選択したいUI要素を選ぶことができます。
それでも選択できない場合は、UI一覧の該当するUIのメニューから「このUIについて問い合わせる」からUI情報を送って問い合わせることができます。ロケータについては以下を参考にしてください。
参考: ロケータについて
また全体的に要素がうまく取れない場合、WebViewではないかを確認してください。WebViewに対しては通常とは異なるスキャンをかける必要があります。
Webview内の要素の場合は「WebViewをスキャン」にチェックを入れてキャプチャすると、HTMLとして扱うことができ、選択できるようになります。Webview内かどうかの判断はUIツリーから確認ができます。

参考: WebViewとは?ブラウザとの違いやガワアプリまで分かりやすく解説
WebView内の要素が取れない
「WebViewをスキャン」にチェックを入れてキャプチャすると、WebView内の要素をHTMLとして扱うことができ、選択できるようになります。
参考: WebViewのテストについて
操作したいUI要素が画面外にある
要素選択モードを解除した状態で、クラウド端末を手動でスワイプして操作したいUI要素を画面内に表示させます。そしてキャプチャまたは要素選択モードを開始して要素を取得します。
ステップに「表示されるまでスワイプ」のコマンドを追加しその要素を表示した上で、「タップ」などを行なってください。
参考: スクロールが必要な画面の操作方法
どのロケータを使えばいいかわからない
基本的には提案されるロケータは、最初に指定されるもの、また候補の上から順におすすめです。実行ごとに変わる値が入っているロケータや長いロケータは不安定となるので、必要に応じて新しくロケータを追加してください。
参考: ロケータについて / 新しいロケータを追加・編集する
ログインなどテストケースをまたいで何度も行う複数の操作がある
同じ画面で入力→タップのような複数の処理が、複数のテストケースに現れる場合、その処理を「共有ステップ」として定義することで、他のテストケースからも1つのコマンドとして利用できるようになります。修正が必要になった場合も、共有ステップの内容を1箇所書き換えるだけで済むので、テストケースのメンテナンスの手間が軽減されます。
参考: 共有ステップの活用
UI要素の特定の位置をタップしたい
操作したいUI要素に他のUI要素が重なっている
重なっていない部分を「左端」のように指定して操作します。
MagicPodで認識できないUI要素
近くにある認識できる他のUI要素から座標X=50,Y=200のように、わざとはみ出して指定して操作します。(左上隅がX=0,Y=0で、右下隅がX=100,Y=100)
不安定になりやすいのでUI要素が選択できないを試しても解決しない場合にのみ行います。
通常の「タップ」コマンドはUI要素に紐づいているイベントなどを直接呼び出して操作しますが、「指定位置タップ」は「左端」「座標」など見た目の位置を元にタップして操作します。
参考: 指定位置タップ
実行ごとに異なる文字列を生成したい
「現在時刻を元に生成したユニークな値を保存」コマンドを使って実行ごとに異なる変数を作成することができます。
その変数をそのまま使ったり、「名前_${変数名}」のように使ったりもできます。
ダイアログを閉じたい
UI要素として認識できるので通常通り操作します。
設定アプリなどの他のアプリを起動したい
「他のアプリを起動(iOS/Android)」コマンドで別のアプリを起動できます。
参考: モバイルアプリテストのスクリプトから、モバイルブラウザなど他のアプリを開きたい
テストステップを管理しやすくしたい
テストステップのかたまりをわかりやすくしたい場合、「コメント」コマンドで内容を説明したり、「空行」コマンドで空行を入れることができます。
注意書きを入れたい場合は、「コメント」コマンドで絵文字を使って強調します。
他にどんなコマンドがあるか知りたい
コマンド一覧ですべてのコマンドを確認できます。
テスト実行
UI要素が見つからないというエラーになる
失敗したステップの前に待機時間を入れる
基本的には画面の読み込みが終わるまで自動で待つようになっていますが、読み込みが足りずUI要素が見つからない場合もあります。その場合、UI要素が表示/存在/一致するまで待機、または固定値で○秒待機するコマンドなどを、失敗したステップの前に入れます。
参考: 待機コマンド
失敗したステップのUI要素に指定しているロケータを変える
MagicPodがUI要素を探す際、ロケータを使用しています。例えば以下のように実行ごとに変化するロケータである場合、テスト作成時とロケータが異なるので見つけることができず失敗します。よって提案ロケータの中から別のものに変える、もしくは新しくロケータを追加する必要があります。
-
- 金額、日時を基準としているもの
例) xpath=//output[text()='7,000円']
- 変化する可能性のあるvalueやidなどを基準としているもの
例) xpath=//input[@value='mp62130']
- 金額、日時を基準としているもの
参考: テストが失敗した時のメンテナンス方法が知りたい - 実行ごとに変化する値をロケータに含んでいる
失敗メッセージを見ても内容がわからない
ヘルプページでその失敗メッセージを検索すると解決策が見つかる場合があります。見つからなかった場合、ヘルプページを読んでも原因特定が難しい場合は「テスト失敗の理由を問い合わせる」ボタンより問い合わせてください。
テストの失敗について問い合わせたい
エラー原因がわからない場合は「テスト失敗の理由を問い合わせる」ボタンより問い合わせることができます。
スケジュール実行したい
Bitrise、CircleCIなどのCIツールを用いて、定期的にビルド+一括テスト実行できるようスケジュールを組みます。GitにPushされる度に実行という方法も可能です。
参考: スタートガイド:3 - 1.日次ビルド+一括テスト実行スケジュール設定(Bitrise)
テスト結果を通知したい
メールとSlackへ通知することができます。
参考: スタートガイド:3 - 1−2.メール通知/1−3.Slack通知
または、MagicPodのWebAPIを用いてTeamsなどへ通知することもできます。
一括実行に時間がかかる
並列実行する
テストを並列実行することで、実行時間を短縮することができます。
詳しくはこちらのページをご覧ください。
キャプチャを特定のステップだけとるようにする
デフォルトではすべてのステップに対しキャプチャを取りますが、特定のステップだけキャプチャをとるようにすると少し時間を短縮できます。
一括実行設定画面の「実行時画面キャプチャ」を「すべてのステップ」から「画面遷移時のみ」または「テスト失敗時のみ」を選択します。キャプチャを取りたい特定のステップがある場合は、そのステップ後に「画面キャプチャを取得」コマンドを追加します。
複数の端末パターンで実行したい
複数の端末や機種のパターンを並列に実行することができます。
詳しくはこちらをご覧ください。
単体実行から一括実行にすると失敗する
内部的な挙動として、単体実行と一括実行で大きな違いはありません。そのため、不安定なテストである、もしくは対象のテストの前に実行したテストの影響で失敗している、という可能性が高いです。
詳しくはこちらをご覧ください。
テスト管理
テストケースを管理する方法が知りたい
フォルダ管理機能やラベルを使用して整理することをお勧めします。
また、生成AI機能を有効化するとテストケースの説明が自動でテストケース一覧に表示されるのでわかりやすいです。
参考:テストケース要約機能
テスト結果を管理する方法が知りたい
- 生成AIツールを使う
- MagicPod MCPサーバーとClaudeなどの生成AIツールを使うことで、テスト結果管理用のダッシュボードを自動生成することができます。
- テスト結果を管理するクラウドツールを使う(Testrail、QualityForwardなど)
- MagicPodのWebAPIからテスト結果を取得することで、自動で結果データが蓄積されます。
- スプレッドシート/エクセルに結果キャプチャと結果URLを貼り付ける
- 一括実行のテスト結果からすべての結果キャプチャをダウンロードすることができます。また、「画面キャプチャを取得」コマンドを追加することで選択的にダウンロードすることもできます。
プロジェクトの分け方、数え方について知りたい
1つのプロダクトに対し1つのプロジェクトを割り当てるのがおすすめです。
参考:プロジェクトとは
共有UI、共有ステップはプロジェクトの中のテストケースを跨いで使えます。
テスト対象のアプリが、iOSとAndroidそれぞれ対応している場合、プロジェクトは分けることをおすすめしています。テストケースもそれぞれ作る必要があります。WebViewをメインとしたアプリであれば、共通のテストケースを使用することもできます。
その他
どういった項目からテストを作成すればいいかわからない
優先順位の付け方については、テスト項目に対して自動化適性の高さから重みづけをし、点数を比較する方法などがあります。
参考: どんなテストから自動化すればいいの?自動化の対象となるテストを選ぶ際の方法3つ
まずはログインなどの基本的な機能、決済など品質保証におけるリスクが大きいものから作成します。
テストケースが数個できたところで毎日実行します。毎日テストを実行してみると、テストの安定性など、実行してみるまで気付かなかった様々な問題にぶつかります。これらを解決しながら、少しずつテストを増やしていきます。
そして広く浅く一通りの機能・画面を網羅します。手元にある手動用のテストケースを上から順番に自動化していくというよりも、優先順位をつけて、まずは基本的なテストケースだけを自動化した方が効率的です。