Firebase Test Lab の iOS 完全サポートと Robo の改善

Firebase Test Lab の iOS 完全サポートと Robo の改善: この記事は デベロッパー アドボケート  Doug Stevensonによる The Firebase Blog の記事 "Firebase Test Lab launches full support for iOS, Robo improvements" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。



dougstevenson_web.jpg









Doug Stevenson
デベロッパー アドボケート
2016 年、Test Lab が Firebase とともに最初のリリースを迎えたとき、サポートされていたのは Android 端末のみでした。5 月の Google I/O 2018 で、Test Lab は iOS サポートのクローズド ベータ版をリリースしました。これに含まれていたのは、一部の iOS 端末と基本的な UI でした。

Android で包括的なテストを作成するには、Espresso や UIAutomator を使い、コードを書く必要があります。これはある意味で、アプリを「リモート コントロール」するようなものです。iOS でも、同じように XCTest を使ってテストを実行します。どちらの場合でも、Test Lab はクラウドにある実際の端末群でテストを実行できます。

10 月末、プラハで開催された Firebase Summit で、Test Lab チームは iOS サポートの一般公開についてお知らせしました。10 機種の iPhone と iPad で、iOS 12 を含む 7 種類のバージョンの iOS が稼働しています。また、iOS のドキュメントとコンソール操作も改善されました。



ios.png


Test Lab では、Robo の改善も数多く行われています。Robo は、Android 端末で実行されるアプリに対して、全自動でテストを行うツールです。以下では、Robo の新機能をご紹介します。

モンキー アクション

ゲームでは、システム ウィジェットを使うよりも UI がカスタマイズされていることが多いため、クロールがしづらくなります。そのため、Robo がゲームのエクスペリエンスをクロールするのも難しくなります。今回より、テスト中のアプリが実際はゲームであることを Robo が検知した場合、ゲームの UI を操作しようと、ランダムにタップやスワイプを行うようになります。これによって、クラッシュやパフォーマンスに関する有用なデータが生成されることがあります。これは、意味のある自動ゲーム クロールに向けて手始めとなる大きな一歩です。

プライベート API の検知

APK で内部 Android API が使われている場合、Test Lab がそれを検知して警告するようになりました。Android P 以降では、このような API を使うとアプリがクラッシュする場合があります。Robo がクロールを行っているときにそのような API へのアクセスが発生すると、端末ログにスタック トレースが記録されるので、アプリのコードのどの場所で違反が起こっているのかがピンポイントでわかります。

行き詰まる時の警告

Robo のクロールが行き詰まると、Test Lab がデベロッパーに警告するようになりました。たとえば、ユーザーに複雑なサインアップ フォームやログイン画面が表示される場合、Robo がフォームの要件を満たすのは難しい場合があります。このような場合、Robo は完全なクロールを継続するための操作をデベロッパーに提案します。たとえば、テスト用の認証情報を提供する、Robo Script を記述するなどです。

定期的にアプリをテストする習慣がない方は、毎日の無料枠を使って Test Lab を試してみてください。Android では、コードを書かなくても APK をアップロードするだけで Robo テストを実行できます。ぜひ、Firebase Slack の #test-lab チャンネルに感想をお寄せください。



Reviewed by Khanh LeViet - Developer Relations Team



コメント

このブログの人気の投稿

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2020-12-01 09:41:49 RSSフィード2020-12-01 09:00 分まとめ(69件)