Memulai pengujian untuk Android dengan Firebase Test Lab

Dengan Firebase Test Lab, Anda dapat menguji aplikasi di berbagai perangkat dan konfigurasi. Panduan Memulai ini memberikan jalur implementasi yang dapat Anda ikuti, serta pengantar untuk penawaran Android di Test Lab.

Untuk mengetahui informasi mengenai kuota dan paket harga Test Lab, baca artikel Penggunaan, Kuota, dan Harga.

Konsep utama

Saat Anda menjalankan pengujian atau serangkaian kasus pengujian pada perangkat dan konfigurasi yang dipilih, Test Lab menjalankan pengujian aplikasi Anda dalam satu batch, lalu menampilkan hasilnya sebagai matriks uji.

Perangkat × Eksekusi Uji = Matriks Uji

Perangkat
Perangkat fisik atau virtual (khusus Android) tempat Anda menjalankan pengujian, seperti ponsel, tablet, atau perangkat wearable. Perangkat dalam matriks uji diidentifikasi menurut model perangkat, versi OS, orientasi layar, dan lokalitas (juga dikenal sebagai setelan geografi dan bahasa).
Pengujian, eksekusi uji
Pengujian (atau serangkaian kasus pengujian) yang dijalankan di perangkat. Anda dapat menjalankan satu pengujian per perangkat, atau melakukan sharding pengujian dan menjalankan beberapa kasus pengujiannya pada perangkat yang berbeda.
Matriks uji
Berisi status dan hasil pengujian untuk eksekusi uji Anda. Jika salah satu eksekusi uji dalam matriks gagal, seluruh matriks akan gagal.

Langkah 1: Siapkan pengujian Anda untuk diupload ke Test Lab

Jenis pengujian yang tersedia

Anda dapat menjalankan pengujian berikut dengan Test Lab. Perhatikan bahwa durasi semua jenis pengujian dibatasi maksimum 45 menit pada perangkat fisik dan 60 menit pada perangkat virtual. Setiap pengecualian yang tidak tertangkap akan menyebabkan kegagalan pengujian.

  • Uji instrumentasi atau pengujian unit berinstrumen: Pengujian yang Anda tulis menggunakan framework Espresso atau UI Automator. Dengan pengujian ini, Anda dapat membuat pernyataan eksplisit tentang status aplikasi Anda untuk memverifikasi fungsinya berjalan benar menggunakan AndroidJUnitRunnerAPIs.

  • Uji Robo: Pengujian otomatis yang menganalisis UI aplikasi, lalu menjelajahinya secara metodis dengan menyimulasikan aktivitas pengguna, tanpa mengharuskan Anda menulis kode apa pun. Buka Tentang uji Robo untuk mengetahui informasi selengkapnya.

  • Pengujian Game Loop: Pengujian yang menggunakan "mode demo" untuk menyimulasikan tindakan pemain dalam aplikasi game. Ini adalah cara yang cepat dan skalabel untuk memverifikasi bahwa game Anda memiliki performa yang baik bagi pengguna. Saat memilih untuk menjalankan pengujian Game Loop, Anda dapat:

    • Menulis pengujian native untuk game engine Anda

    • Menghindari menulis kode yang sama untuk UI atau framework pengujian yang berbeda

    • Secara opsional, membuat beberapa loop untuk dijalankan dalam satu eksekusi uji (buka Tentang pengujian Game Loop untuk mempelajari lebih lanjut). Anda juga dapat mengatur loop menggunakan label sehingga Anda dapat melacaknya dan menjalankan kembali loop tertentu.

    Buka Menjalankan pengujian Game Loop untuk mendapatkan petunjuk tentang cara menjalankan pengujian ini dengan Test Lab.

Alat untuk menjalankan pengujian Anda

Anda dapat memilih alat berikut untuk menjalankan pengujian:

  • Direkomendasikan untuk pengguna pertama kali: Firebase console memungkinkan Anda mengupload aplikasi dan memulai pengujian dari browser web Anda. Baca bagian Menguji dengan Firebase console untuk mendapatkan petunjuk tentang cara menjalankan pengujian menggunakan alat ini.

  • Integrasi Android Studio memungkinkan Anda menguji aplikasi tanpa keluar dari lingkungan pengembangan. Lihat Menguji dengan Android Studio untuk mendapatkan petunjuk tentang cara menjalankan pengujian menggunakan alat ini.

  • Dengan antarmuka command line gcloud, Anda dapat menjalankan pengujian dari command line secara interaktif. Antarmuka ini juga sangat cocok untuk pembuatan skrip sebagai bagian dari proses build dan pengujian otomatis. Baca artikel Menguji dengan gcloud CLI untuk mendapatkan petunjuk tentang cara menjalankan pengujian menggunakan alat ini.

Anda juga dapat menguji aplikasi secara gratis dengan Test Lab ketika mengupload dan memublikasikan file APK aplikasi ke Play Store, baik menggunakan saluran alfa maupun beta. Untuk mengetahui informasi lebih lanjut, baca artikel Menggunakan laporan pra-peluncuran untuk mengidentifikasi masalah dan Uji Robo.

Langkah 2: Pilih perangkat pengujian Anda

Test Lab mendukung pengujian di beberapa merek dan model perangkat Android yang terinstal dan berjalan di pusat data Google. Pengujian pada perangkat di Test Lab membantu Anda mendeteksi masalah yang mungkin tidak terjadi saat menguji aplikasi menggunakan emulator di Android Studio. Untuk mempelajari lebih lanjut, lihat Perangkat yang tersedia.

Langkah 3: Tinjau hasil pengujian

Bagaimanapun cara Anda memulai pengujian, semua hasil uji akan dikelola oleh Test Lab dan dapat dilihat secara online.

Ringkasan hasil uji disimpan secara otomatis dan dapat dilihat di Firebase console. Ringkasan ini berisi data yang paling relevan untuk pengujian Anda, termasuk video dan screenshot khusus kasus pengujian, jumlah pengujian yang lulus, gagal, atau mendapatkan hasil yang tidak stabil, dan lainnya.

Hasil pengujian mentah berisi log pengujian dan detail kegagalan aplikasi, serta disimpan secara otomatis dalam bucket Google Cloud. Jika Anda menentukan bucket, Anda akan dikenai biaya penyimpanan. Jika Anda tidak menentukan bucket, Test Lab akan membuatkannya untuk Anda secara gratis.

Untuk mengetahui detail selengkapnya, baca artikel Menganalisis Hasil Firebase Test Lab.

Saat memulai pengujian dari Android Studio, Anda juga dapat meninjau hasilnya dari dalam lingkungan pengembangan.

Pembersihan perangkat

Google menangani keamanan data aplikasi Anda dengan sangat serius. Kami mengikuti praktik terbaik sesuai standar industri untuk menghapus data aplikasi dan mereset setelan sistem pada perangkat fisik setelah setiap pengujian dijalankan. Ini dilakukan guna memastikan bahwa perangkat siap menjalankan pengujian baru. Untuk perangkat yang dapat di-flash dengan image pemulihan kustom, kami melakukan flash antar-pengujian.

Untuk perangkat virtual yang digunakan oleh Test Lab, instance perangkat akan dihapus setelah digunakan sehingga setiap pengujian yang dijalankan akan menggunakan instance perangkat virtual baru.


Test Lab dan layanan Google Play

Perangkat Test Lab biasanya berjalan di SDK layanan Google Play versi terbaru, tetapi beberapa perangkat mungkin memerlukan waktu beberapa hari untuk mengupdate setelah SDK versi baru dirilis. Perlu diperhatikan bahwa Anda mungkin akan mengalami masalah kompatibilitas dengan beberapa perangkat.

Mengizinkan perangkat uji mengakses server backend pribadi

Beberapa aplikasi seluler perlu berkomunikasi dengan layanan backend pribadi agar dapat berfungsi dengan benar selama pengujian. Jika server backend dilindungi oleh aturan firewall, Anda dapat mengizinkan akses untuk perangkat fisik dan virtual Test Lab menggunakan blok alamat IP di bawah untuk membuka rute melalui firewall.

Periklanan seluler

Test Lab menyediakan infrastruktur skalabel yang mengotomatiskan pengujian aplikasi. Namun sayangnya, kemampuan ini dapat disalahgunakan oleh aplikasi berbahaya yang dirancang untuk menghasilkan pendapatan iklan palsu.

Untuk mengurangi masalah ini:

  • Jika Anda menggunakan atau bekerja sama dengan penyedia layanan periklanan digital pihak ketiga (misalnya, jaringan iklan atau platform sisi permintaan), sebaiknya gunakan iklan pengujian, bukan iklan sungguhan selama pengembangan dan pengujian aplikasi.

  • Jika Anda harus menggunakan iklan sungguhan dalam pengujian, beri tahu penyedia layanan periklanan digital yang bekerja sama dengan Anda untuk memfilter pendapatan dan semua traffic terkait yang dihasilkan dari Test Lab dengan menggunakan blok alamat IP di bawah. Anda tidak perlu memberi tahu penyedia iklan milik Google karena Test Lab akan menanganinya untuk Anda.

Alamat IP yang digunakan oleh perangkat Test Lab

Semua traffic jaringan yang dihasilkan oleh perangkat Test Lab berasal dari blok alamat IP berikut. Anda juga dapat mengakses daftar ini dengan menggunakan perintah gcloud beta firebase test ip-blocks list di gcloud CLI. Daftar ini diperbarui rata-rata sekali per tahun.

Platform dan jenis perangkat Blok alamat IP CIDR
Perangkat fisik Android dan iOS, perangkat virtual Arm

70.32.128.0/19 (ditambahkan 02-2022)

108.177.6.0/23

108.177.18.192/26 (ditambahkan 02-2022)

108.177.29.64/27 (diperluas 02-2022)

108.177.31.160/27 (ditambahkan 02-2022)

199.36.156.8/29 (ditambahkan 02-2022)

199.36.156.16/28 (ditambahkan 02-2022)

209.85.131.0/27 (ditambahkan 02-2022)

2001:4860:1008::/48 (ditambahkan 02-2022)

2001:4860:1018::/48 (ditambahkan 02-2022)

2001:4860:1019::/48 (ditambahkan 02-2022)

2001:4860:1020::/48 (ditambahkan 02-2022)

2001:4860:1022::/48 (ditambahkan 02-2022)

Perangkat virtual Android (Non-Arm)

34.68.194.64/29 (ditambahkan 11-2019)

34.69.234.64/29 (ditambahkan 11-2019)

34.73.34.72/29 (ditambahkan 11-2019)

34.73.178.72/29 (ditambahkan 11-2019)

34.74.10.72/29 (ditambahkan 02-2022)

34.136.2.136/29 (ditambahkan 02-2022)

34.136.50.136/29 (ditambahkan 02-2022)

34.145.234.144/29 (ditambahkan 02-2022)

35.192.160.56/29

35.196.166.80/29

35.196.169.240/29

35.203.128.0/28

35.234.176.160/28

35.243.2.0/27 (ditambahkan 7-2019)

35.245.243.240/29 (ditambahkan 02-2022)

199.192.115.0/30

199.192.115.8/30

199.192.115.16/29

Blok IP perangkat yang tidak digunakan lagi

74.125.122.32/29 (dihapus 02-2022)

216.239.44.24/29 (dihapus 02-2022)