このページでは、MagicPodでテストの一括実行をする方法と、コマンドラインからテストを実行する方法を説明します。
目次
1.画面からのテスト一括実行
MagicPodでは、プロジェクトの全てのテストを一括で実行できます。一括実行を行うには、プロジェクトの画面から「テスト一括実行」タブを選択して、テスト一括実行ページに移動します。(図1)
図1 テスト一括実行ページ
この画面でターゲットOSとテスト対象アプリを指定し(図2)、「テストを一括実行」ボタンを押します。
図2 ターゲットOSとテスト対象アプリを指定
するとクラウド環境の場合はクラウド上で、ローカルPC環境の場合はMagicPodDesktopが起動して、テストが始まります。ブラウザ上でページを一度読込すると、テスト一括実行の一覧に実行中のテストが追加されているのが確認できます(図3)。
図3 batch runに実行中のテストが追加された様子
その後テストが完了すると「成功/失敗」のステータスや実行時間などをブラウザ上で確認できます(図4)。
一覧の左側にあるテスト実行結果番号または右側にある「>」リンクをクリックすると、一括テスト実行ごとの結果を確認することができます。
図4 一括実行テスト結果
さらに各テストケースをクリックすると、各テストケース実行の詳細なログを確認できます。(図5)。
図5 テストごとの実行結果
テストが失敗していた場合は、図6のようにエラーの内容やエラー時の画面キャプチャも確認できます(図6)。
図6 エラーテストの詳細
テストが完了すると、テスト結果がプロジェクトの全メンバーにメール配信されます。(図7)
図7 テスト結果メール
また、スケジュール実行も可能です。
2.複数種類の端末に対するテスト一括実行 (外部クラウドサービス)
外部クラウドサービスを使っている場合、図8の「+」を追加ボタンを押すことで、複数種類のバージョン・機種の組み合わせに対し、まとめてテスト一括実行を行う設定を作成できます。
図8 端末パターンの追加
- Remote TestKitの場合、利用した端末の返却処理のために、テスト開始時に10分間の待機処理が発生することがあります。
- デフォルトでは1種類の端末のテストが終わるまで次の端末でのテストは実行されません。BrowserStackやRemote TestKitで複数端末で並列にテストを実行できるプランを契約している場合、MagicPod側で図9のように同時並列数を指定することで、複数種類の端末で並列でテスト実行することができます。
図9 同時並列実行数の指定
3.コマンドラインからのテスト一括実行 (クラウド・外部クラウドサービス)
MagicPodのクラウド端末や外部クラウドサービスを使ったテストの場合、Web API経由で簡単に一括実行することが可能です。
1. curl,Invoke-RestMethod形式
手順としては、テスト一括実行画面でテスト対象を設定した後、図10のように、この設定で実行可能なコマンドをcurl(Mac/Linuxの場合)やInvoke-RestMethod(WindowsのPowerShellの場合)の形式で取得し、ターミナルなどにペーストして実行します。
図10 テスト一括実行コマンドのコピー
2. magicpod-api-client形式
curlやInvoke-RestMethod形式の場合、一括テスト実行が完了するまで待ってテスト結果をチェックすることができません(テスト結果はMagicPodの画面やテスト結果メールで確認する必要があります)。magicpod-api-clientを使えばこの問題を解消できます。
手順としては、まずmagicpod-api-clientを以下コマンドを使用してAPI経由でダウンロード、解凍し、適当な場所に配置します。
curl -L "https://app.magicpod.com/api/v1.0/magicpod-clients/api/{os}/latest/" -H "Authorization: Token {apikey}" --output {filename}.zip
- {os}: Macはmac、Windowsはwindows、Linuxであればlinux
- {apikey}: APIトークン
- {filename}: お好きなファイル名
もしくは手動でこちらのページから利用するOSに応じて、linux64_magicpod-api-client.zip、mac64_magicpod-api-client.zip、win64_magicpod-api-client.exe.zipのいずれかをダウンロード、解凍し、適当な場所に配置します。
そして、同様にテスト一括実行画面でテスト対象を設定した後、この設定で実行可能なコマンドをmagicpod-api-clientの形式で取得し、ターミナルなどにペーストして実行します。
図11 テスト実行中の様子
図12 テスト成功の結果が表示された様子
Web APIの詳細な仕様は、ユーザーメニューの「APIトークン」>「APIドキュメント」から確認できます。(図13)
図13 Web APIドキュメント