MagicPodのテスト一括実行をおこなう際、任意の App ファイルを指定する

※ 結論だけ知りたい方は、4.結論 をご覧ください 🙏 1.前提とこの記事で解決したい課題 1-1.前提 最近は MagicPod という E2E テスト自動化ツールを触ることが多い。 MagicPod では、複数のテストシナリオを実行(MagicPod ではこれを テスト一括実行/一括テスト実行 と称している。)することができる。また、テスト対象のアプリケーションのアーカイブ(App ファイル)には、MagicPod 上でユニークな連番である、app_file_number を割り当てられ、テスト一括実行 の際にはこの app_file_number を指定することで、任意の App ファイルを指定することもできる。 app_file_number のいちばんカンタンな取得方法は、App ファイルを MagicPod 側にアップロードする際のレスポンスから取得することである。 $ app_file_number=$(./magicpod-api-client upload-app -a <path to app/ipa/apk>) $ ./magicpod-api-client batch-run \ -t "${token}" -o "${organization}" -p "${project}" -S "${test_settings_number}" \ -s "{\"app_file_number\":\"${app_file_number}\"}" 参考: https://github.com/Magic-Pod/magicpod-api-client#upload-app-run-batch-test-for-the-app-wait-until-the-batch-run-is-finished-and-delete-the-app-if-the-test-passed 1-2.この記事で解決したい課題 しかし、App ファイルを MagicPod 上にアップロードするジョブとテスト一括実行のジョブが独立しているとしたらどうだろうか。App ファイルのアップロードのレスポンスから取得した app_file_number をテスト一括実行の引数として渡すことができない。そのため、指定したい App ファイルの app_file_number の取得方法を新たに用意しなければならない。 あるいは、App ファイルに test など任意の文字列が含まれさえしなければ、最新のもの指定したい場合もあるだろう。この場合はどうやって指定すればよいだろうか。 この記事では、そのような課題に対する解決策のひとつを書き留めたい。...

April 16, 2023 · 5 min · gkzz