機能一覧
テスト自動化エキスパートの知見が凝縮されています
テスト作成
タップ操作
タップ、ダブルタップ、長押し、マルチタッチ、座標指定タップ、システムボタンタップが可能です。
クリック操作
クリック、ダブルクリック、右クリック、Shift/Controlクリック、座標指定クリックが可能です。
入力操作
テキストエリア、チェックボックス、プルダウン、スイッチ、ピッカー(モバイルアプリ)など様々なUI要素に対し値を入力できます。ショートカットキー入力(ブラウザ)も可能。
値チェック
テキスト、要素の存在、有効/無効、表示/非表示、属性、タイトル(ブラウザ)、URL(ブラウザ)、アラートメッセージ(ブラウザ)などの値が期待値どおりかをチェックできます。差異があった場合その時点でテストを終了するか継続するかも指定できます。
ジェスチャー操作
スワイプ、フリック、ピンチアウト、ドラッグ&ドロップ、長押し移動が可能です。
アプリの背面/前面移動
テスト対象のアプリをバックグラウンド化したり、フォアグラウンドに戻したりできます。
シェイク操作
端末を振る操作が可能です。
端末への画像追加
テストに使う画像を端末に追加できます。
クリップボード操作
端末のクリップボードの値を取得したり、値をセットしたりできます。
フリーハンド図形描画
お絵描きアプリなどで複雑な図形を手で描く操作も自動化できます。
アプリ情報クリア
テスト開始時にアプリの情報をクリアできます。
端末設定の変更
言語、地域、位置情報、タイムゾーンなどの端末設定を変更できます。
WebView
WebViewを使ったモバイルアプリもテストできます。CordovaやMonacaのテストにも。
Flutter
Flutterアプリのテストにも対応しています。
ナビゲーション操作
URL遷移、戻る、進む、リロードが可能です。
ウィンドウ操作
タブ・ウィンドウ切り替え、アラートダイアログ操作が可能です。フレームについては、自動的に切り替えを行います。
ブラウザデータ操作
Cookie、Local Storage、Session Storageのクリアや値セットが可能です。
ファイル操作のコマンド
ファイルダウンロードやアップロードの処理も自動化できます。ダウンロードしたファイルの内容のチェックも可能です。
認証が必要なサイトのテスト
ベーシック認証のかかったウェブサイトや、接続にクライアント証明書や追加のルート証明書(ローカルPCテストのみ)が必要なサイトもテストできます。
Shadow DOM
Shadow DOMを使ったWebサイトもテストできます。Salesforceアプリケーションのテストにも。
回転
モバイル端末の縦向き/横向きを変更することができます。
自動的な待ち処理
対象の要素が見つからないなどの場合には一定時間自動で待ち処理を行います。
明示的な待ち処理コマンド
要素のテキストや表示・非表示など、さまざまな条件が満たされるまで待機するよう明示的に指定も可能です。
日時計算コマンド
テスト内で現在時刻などの様々な日付情報を様々な書式で取得できます。
四則演算コマンド
テスト内で足し算・引き算・掛け算・割り算が可能です。
テキスト処理コマンド
テスト内でテキストの置換処理を行なったり、テキストから正規表現に一致した部分だけを取り出したりできます。
数値比較コマンド
テスト内で数値の大小比較が可能です。
HTTPリクエストコマンド
テスト内で任意のHTTPリクエストを送信できます。
二段階認証コード計算コマンド
テスト内で、Google Authenticatorなどのアプリを使った二段階認証で入力すべきパスコードを計算できます。
Emailテスト
HTTPリクエストコマンドで外部メールサービスのAPIを呼び出せば、Emailのテストも実現できます。
画像差分チェック
ページ画像の差分チェックでデザイン崩れを検出できます。除外領域の指定や、端末・ブラウザごとの正解画像の用意も可能。
Chrome拡張機能
テスト作成および実行時に、指定したChrome拡張機能をインストールできます。
ロケータの自動計算
テスト対象を指定するロケータは、メンテナンス性の高いものを自動計算します。UIツリー内のランダム値はできるだけ使わないなどの工夫も。
ロケータの変更
テスト対象を指定するロケータは、MagicPodが提案する他の候補や、自分で追加したものに変更できます。
条件分岐
「アラートが表示された場合のみクリック」などの条件処理が記述できます。
変数
画⾯上の値などを変数にセットして、後続の処理や要素ロケータ内で利用できます。
シークレット変数
パスワードなどの値をテストで扱う場合は、結果ログに出力されないようマスクできます。
システム変数
テスト対象のOS、ブラウザ、端末名などの値を特別な変数を使って取得できます。
コメント
テストの各行にコメントをつけることで、テストの意図がわかりやすくなります。
コピー・切り取り・貼り付け
テストスクリプトのコピー・切り取り・貼り付けできます。
元に戻す・やり直し
テストスクリプトの編集内容を元に戻したり(Undo)、やり直したり(Redo)できます。
複数アプリ操作
1つの端末内で複数のアプリにまたがるテストが可能です。
テスト実行
クラウドテスト
MagicPodの提供するクラウドの端末やブラウザで、テストの作成・実行が可能です。PCやブラウザに何かをインストールする必要はありません。
ローカルPCテスト
MagicPod DesktopをPCにインストールすれば、手元のブラウザや実機端末を使ったテストも可能です。
SauceLabs連携
SauceLabsの様々なブラウザや実機端末でテストを実行できます。(別途SauceLabsの契約が必要です)
BrowserStack連携
BrowserStackの様々なブラウザや実機端末でテストを実行できます(別途BrowserStackの契約が必要です)。BrowserStack Localにも対応。
HeadSpin連携
HeadSpinの様々な実機端末でテストを実行できます。(別途HeadSpinの契約が必要です)
テスト一括実行
作成したテストをまとめて一度に実行できます。
マルチ端末テスト
iOS・Androidの様々なOSバージョン・機種の端末が利用できます。
クロスブラウザテスト
Chrome、Edge、Safari、Firefox、IEモード(Edge)でテスト実行できます。
モバイルエミュレーション
Chromeのモバイルエミュレーションで、iOS・Androidのモバイルブラウザテストができます。
並列テスト実行
作成したテストを、様々な端末やブラウザで並列(または直列)実行できます。
コマンドライン実行
Web APIやコマンドラインクライアントを使って、テストをコマンドラインから実行できます。
CI連携
Jenkins、CircleCI、GitHub Actions、Bitrise(モバイルアプリ)などのおなじみのCIツールと連携できます。
スケジュール実行
作成したテストを、好きな曜日や時間にクラウドで定期実行できます。
部分テスト実行
テストスクリプトの一部の範囲だけを選んで実行できます。
テスト結果ログ
ステップごとの画面キャプチャ、エラー時のUIツリー、実行時間情報、端末ログ、Appium/Seleniumログ、などの情報をテスト結果としてリアルタイムで確認できます。
テスト結果メール通知
テストの一括実行結果をメールで通知できます。
テスト結果Slack通知
テストの一括実行結果をSlackで通知できます。テスト結果ステータスごとに通知先を変えることもできます。
失敗テストの自動リトライ
失敗したテストを自動で何回か再実行するよう設定できます。
テストケースラベル
各テストにラベルをつけておき、ラベルを指定(もしくは除外)してテスト実行できます。
プライベート環境のテスト
適切な設定を行うことで、プライベート環境のテストも可能です。
メンテナンス効率化
変更履歴管理
テストケースや共有ステップの変更履歴を確認できます。データを過去の時点の内容に戻すこともできます。
自動修復
テストケース実行に失敗した場合に、ロケータ定義とコマンドの自動修正を試みます。(テスト一括実行時のみ)
共有ステップ
よく使う処理をまとめて「共有ステップ」化して使い回せます。
値やUI要素をステップのパラメータにすることも。
データ駆動テスト
同じような処理を、データパターンを変えて繰り返し実行できます。データ定義のCSVアップロード/ダウンロードにも対応。
UI定義共通化
複数のテストケースで使われる画面定義を共有し、保守性を向上できます。
UI定義の整理機能
画面定義の上書きや統合、セクション分割など、様々な方法で画面定義を整理できます。さらにAIによる自動整理機能もサポート。
共有変数
複数のテストケースで共通して使われる変数の値を、テスト実行時に外側から指定できます。
多言語データパターン
言語ごとの翻訳テキストを定義しておくことで、多言語アプリケーションのテストが容易になります。
フォルダ管理機能
プロジェクト内のテストケースをフォルダで整理・管理することができます。
要約生成機能
各テストケースの要約や、変更内容の要約を自動生成することができ、変更履歴の確認と共有が簡単に行えます。
その他
画面キャプチャダウンロード
テスト一括実行結果の画面キャプチャをまとめてダウンロードできます。
Web API
テスト一括実行、テスト結果取得、画面キャプチャダウンロード、アプリファイルアップロードなど、様々な操作をWeb APIで行えます。
表示言語切り替え
MagicPodは日本語または英語で利用できます。
ユーザー権限管理
プロジェクトごとに、各ユーザーに閲覧・編集・削除などの権限を割り当てられます。
二段階認証
二段階認証でユーザーアカウントのセキュリティを高められます。
Webプッシュ通知
クラウド端末・ブラウザの起動・終了時や、テスト実行の完了時にWebプッシュ通知を受け取ることができます。
ユーザー固定IP
クラウドの端末・ブラウザが利用ユーザーのテスト環境にアクセスする際の接続元IPとして、その組織専用のものを利用できます。テスト環境側でこのIPのみを許可することで、より安全にクラウド端末・ブラウザを利用できます。(エンタープライズプランのみ)
接続元IP制限
特定のIPからしか組織のテストデータに接続できないようにします。(エンタープライズプランのみ)
SAMLシングルサインオン
SAMLを使ったシングルサインオンが可能です。(エンタープライズプランのみ)
組織専用ユーザー
組織内でしか使えないユーザーアカウントを作成することができます。(エンタープライズプランのみ)
ドメインコントロール
指定したドメインのメールアドレスを他の組織で使用できないよう制限します。(エンタープライズプランのみ)
セキュアトンネリング機能
MagicPodConnectという専用のツールを使ってMagicPodのクラウド環境とユーザーの社内環境を安全に接続し、クラウド端末・ブラウザを使って社内サーバーに対するテストが可能です。(エンタープライズプランのみ)