SauceLabsは、様々な種類のブラウザ・モバイル実機端末を使って、手動・自動テストを簡単に行えるクラウドサービスです。
Selenium・Appiumのテスト実行クラウドの業界最大のプロバイダーの1つであり、あらゆる機能と優れた顧客サポートを提供しています。
対応機種・OSバージョン
こちらの「Real devices」の項目にて確認できます。国内メーカーの端末は扱っていないものもありますが、かなり多くの種類の端末が選べます。
利用方法
まずはSauceLabsトップページの「Try it free」ボタンからアカウントを登録します。送られてくる認証メールをクリックしてSauceLabsにログインすると、ダッシュボード画面に移動します(移動しない場合はブラウザから「https://billing.saucelabs.com/plans」を開いてください)。これで14日間の無料トライアルが開始されます。
これで準備ができたので、続いてテスト一括実行の画面で、図1のように必要な項目を入力します。
[1]ユーザー名・[2]アクセスキー
SauceLabsの画面右上「ACCOUNT」>「User settings」(図2)をクリックします。
「User settings」(図3)のページからユーザー名とアクセスキーを確認することができます。
[3] データセンター
SauceLabsには「United States」と「Europe」の2種類のデータセンターがあります。SauceLabsの画面右上の「DATA CENTER」の欄(図4)に、「US」と記載のある場合は「United States」を、「EU」と記載のある場合は「Europe」を選択します。
[4] バージョン・機種
利用可能な端末は、手動テスト用の機能「LIVE」上で見ることができます。画面左の「LIVE」にある「Mobile App」をクリックし、「App Upload」をクリックして「Choose File」から適当なアプリのAPKファイルまたはIPAファイルをアップロードします(図5)。なお、アップロードしたアプリは端末の一覧を見るためにだけ利用するので、バージョンと機種名の情報を確認した後は削除して構いません。
アップロード後、アップロードされたファイル上で「Choose Device」をクリックすると利用可能な端末の機種・バージョンの一覧を確認できます。(図6)
すると利用可能な端末一覧(図7)が表示されるので、「14.4」などのバージョン名と「iPad 10.2」などの機種名をテスト一括実行の画面に入力してください。
- 無料トライアル中は、「Free」というラベルのついた端末でしかテスト実行できません。
- 明示されていませんが、無料トライアルでは複数端末を同時に使うことはできないようです。
- バージョンは部分一致で、例えば「13」を指定すると「13.1」「13.2」などにもマッチします。詳細はSauceLabsのドキュメントを参考にしてください。
- 端末名には「iPhone .*」のように正規表現が使えます。詳細はSauceLabsのドキュメントを参考にしてください。
テスト結果
MagicPodのテスト結果画面に加えて、SauceLabsの画面上でもテスト結果が確認できます。テスト結果の一覧から各テストをクリックすると、テストのログや、現在実行中および実行後のテストの動画が表示されます(図8)。
コマンドライン実行
こちらの方法で、コマンドラインからもテスト一括実行が可能です。
複数種類の端末に対するテスト一括実行
こちらの方法で、複数種類の端末に対するテスト一括実行が可能です。
制限事項
- SauceLabsのiOS端末は、プッシュ通知が無効化されており、プッシュ通知の権限許可ダイアログも表示されません(参考)。プッシュ通知のテストをSauceLabsで行いたい場合は、SauceLabsのプライベートクラウドプランを契約する必要があります。
- テストケース名や一括実行の設定名に日本語が含まれていると、その部分はSauceLabs側のWebコンソール上のテスト結果名称に反映されません。
既知の問題
SauceLabs上でのテストに関しては以下の問題があります。
- App store/Play storeアプリのログイン状態がリセットされないことがあります。そのため、App store/Play storeアプリでApple ID/Googleアカウントをお使いになる場合、ログアウト処理をテストケースに入れる必要があります。