Ikuti semua informasi yang diumumkan di Firebase Summit, dan pelajari bagaimana Firebase dapat membantu Anda mempercepat pengembangan aplikasi dan menjalankan aplikasi dengan percaya diri. Pelajari Lebih Lanjut

Mulai pengujian dengan gcloud CLI

Panduan ini menjelaskan cara menjalankan pengujian instrumentasi, Robo, atau Game Loop menggunakan gcloud CLI .

Untuk daftar lengkap perintah gcloud yang dapat Anda gunakan dengan aplikasi Android di Test Lab, kunjungi dokumentasi referensi untuk gcloud firebase test android .

Sebelum kamu memulai

Jika Anda belum melakukannya, tambahkan Firebase ke proyek Android Anda .

Langkah 1. Siapkan CLI gcloud

  1. Unduh Google Cloud SDK.
  2. Ini termasuk alat CLI gcloud.

  3. Pastikan instalasi Anda mutakhir:
    gcloud components update
    
  4. Masuk ke gcloud CLI menggunakan akun Google Anda:
    gcloud auth login
    
  5. Tetapkan project Firebase Anda di gcloud, dengan PROJECT_ID sebagai ID project Firebase Anda:
    gcloud config set project PROJECT_ID
    

Langkah 2. Periksa perangkat uji yang tersedia

Gunakan perintah gcloud berikut untuk melihat perangkat pengujian dan lokal yang tersedia untuk pengujian Anda.

Sebagai opsi, Anda juga dapat mengunduh contoh aplikasi Notepad untuk segera menjalankan perintah. Gunakan file biner app-debug-unaligned.apk dan file pengujian instrumentasi app-debug-test-unaligned.apk , yang terletak di NotePad/app/build/outputs/apk/ .

  • models list : Dapatkan daftar perangkat Android terkini yang tersedia untuk Anda uji.

    gcloud firebase test android models list
    

    Dalam keluaran perintah:

    • Kolom MODEL_ID berisi pengenal yang nantinya dapat Anda gunakan untuk menjalankan pengujian pada model perangkat.
    • Kolom OS_VERSION_ID berisi versi sistem operasi yang didukung oleh perangkat.

    Contoh keluaran

    gcloud firebase test android models list output

  • models describe : Dapatkan informasi lebih lanjut tentang MODEL_ID Android tertentu.

    gcloud firebase test android models describe MODEL_ID
    

    Keluarannya berisi merek model perangkat, pabrikan, versi OS, level API yang didukung, Antarmuka Biner Aplikasi (ABI) yang didukung, tanggal rilis, dan apakah perangkat itu fisik atau virtual.

  • versions list : Dapatkan daftar versi OS yang saat ini tersedia untuk diuji.

    gcloud firebase test android versions list
    

    Anda dapat menggunakan pengenal dari salah satu dari dua kolom pertama output perintah ( OS_VERSION_ID dan VERSION ), untuk menjalankan pengujian terhadap versi OS Android nanti. Jika Anda tidak menentukan versi OS Android untuk diuji, default yang tercantum di kolom TAGS akan digunakan.

    Contoh keluaran

    gcloud android versions list

  • locales list : Dapatkan daftar lokal saat ini yang tersedia untuk diuji.

    gcloud firebase test android versions list
    

    Kolom pertama dari keluaran perintah, LOCALE , berisi pengidentifikasi yang dapat Anda gunakan nanti untuk menjalankan pengujian terhadap suatu lokal. Jika Anda tidak menentukan lokal untuk diuji, bahasa Inggris digunakan sebagai lokal default.

Menjalankan tes

Setelah mengetahui berbagai model perangkat, lokal, dan versi OS yang tersedia untuk menguji aplikasi, Anda dapat menentukan perangkat menggunakan perintah gcloud firebase test android run dan flag --device untuk menjalankan pengujian Robo atau instrumentasi.

Menjalankan uji Robo

Meskipun Anda tidak memiliki pengujian instrumentasi, Anda tetap dapat mencari bug di aplikasi Anda. Gunakan uji Robo untuk melakukan tinjauan otomatis antarmuka pengguna aplikasi Anda. Uji Robo melatih aplikasi dengan melakukan analisis statis dari berbagai jalur melalui antarmuka pengguna aplikasi, lalu merayapi aplikasi untuk menemukan kerusakan dan potensi masalah lainnya.

Mari kita mulai dengan menjalankan perintah contoh:

gcloud firebase test android run \
  --type robo \
  --app app-debug-unaligned.apk \
  --device model=Nexus6,version=21,locale=en,orientation=portrait  \
  --device model=Nexus7,version=19,locale=fr,orientation=landscape \
  --timeout 90s

Parameter --type robo bersifat implisit jika tidak ada nilai --type yang ditentukan. Anda dapat melihat rangkaian lengkap opsi baris perintah untuk menjalankan pengujian dengan mengetik: gcloud help firebase test android run . Sebagai alternatif untuk menentukan semua argumen ini pada baris perintah, Anda dapat secara opsional menentukan argumen Anda dalam file argumen berformat YAML. Jalankan gcloud topic arg-files untuk mempelajari cara menggunakan fitur ini.

Lihat bagian Analisis hasil tes Anda untuk mempelajari cara menginvestigasi hasil tes dari uji Robo.

Menjalankan pengujian instrumentasi Anda

Sekarang gunakan alat baris perintah gcloud untuk menjalankan pengujian Espresso aplikasi Notepad pada konfigurasi perangkat Android yang Anda tentukan. Gunakan jenis pengujian instrumentation untuk menjalankan pengujian di app-debug-test-unaligned.apk sebagai berikut:

gcloud firebase test android run \
  --type instrumentation \
  --app app-debug-unaligned.apk \
  --test app-debug-test-unaligned.apk \
  --device model=Nexus6,version=21,locale=en,orientation=portrait  \
  --device model=Nexus7,version=19,locale=fr,orientation=landscape

Parameter --type instrumentation bersifat implisit jika APK pengujian telah ditentukan dengan --test . Sebagai alternatif untuk menentukan semua argumen ini pada baris perintah, Anda dapat secara opsional menentukan argumen Anda dalam file argumen berformat YAML. Jalankan gcloud topic arg-files untuk mempelajari cara menggunakan fitur ini.

gcloud CLI mendukung Android Test Orchestrator . Orchestrator memerlukan AndroidJUnitRunner v1.1 atau lebih tinggi. Untuk mengaktifkannya, gunakan gcloud firebase test android run with the
bendera --use-orchestrator . Untuk menonaktifkannya gunakan --no-use-orchestrator .

Anda juga dapat mengontrol cara Test Lab menjalankan pengujian instrumentasi menggunakan tanda tambahan yang tidak ditampilkan di atas. Misalnya, Anda dapat menggunakan --test-targets untuk menguji satu class atau metode class yang digunakan oleh APK pengujian Anda. Anda juga dapat mengetahui apakah pengujian Anda yang gagal benar-benar tidak stabil atau tidak dengan menggunakan --num-flaky-test-attempts , yang menentukan berapa kali eksekusi pengujian harus dicoba kembali jika satu atau lebih kasus pengujiannya gagal karena alasan apapun. Untuk mempelajari lebih lanjut, lihat pengujian gcloud firebase android run .

Laporan cakupan kode untuk pengujian instrumentasi

Test Lab mendukung alat pelaporan cakupan kode EMMA dan JaCoCo . Jika Anda memiliki salah satu alat yang terintegrasi ke dalam build untuk aplikasi, Anda bisa mendapatkan laporan cakupan kode untuk pengujian Test Lab dengan menjalankan gcloud firebase test android run dengan beberapa argumen tambahan. Jika Android Test Orchestrator tidak diaktifkan, gunakan yang berikut ini:

gcloud firebase test android run \
  --type instrumentation \
  --app your-app.apk \
  --test your-app-test.apk \
  --device model=TestDevice,version=AndroidVersion  \
  --environment-variables coverage=true,coverageFile="/sdcard/Download/coverage.ec" \
  --directories-to-pull /sdcard/Download

Jika Anda membuat laporan cakupan kode sambil menggunakan Android Test Orchestrator, ubah variabel lingkungan Anda seperti berikut:

gcloud firebase test android run \
  --type instrumentation \
  --app your-app.apk \
  --test your-app-test.apk \
  --device model=TestDevice,version=AndroidVersion  \
  --environment-variables clearPackageData=true,coverage=true,coverageFilePath="/sdcard/Download/" \
  --directories-to-pull /sdcard/Download

Saat Test Lab selesai menjalankan pengujian Anda, temukan laporan cakupan kode Anda di Google Cloud Storage:

  1. Buka tautan Firebase console yang dicetak oleh alat gcloud di atas tabel hasil pengujian di terminal Anda.
  2. Klik eksekusi uji dari daftar di link tersebut untuk membuka halaman detail eksekusi tersebut.
  3. Klik Hasil pengujian untuk membuka bucket Cloud Storage dengan hasil pengujian eksekusi tersebut.
  4. Buka artifacts/coverage.ec untuk melihat laporan cakupan kode Anda.

Analisis hasil tes Anda

Setelah beberapa menit, ringkasan dasar hasil pengujian Anda akan dicetak oleh alat gcloud:

Command test results

Keluaran dari uji coba baris perintah Anda juga menyertakan tautan untuk melihat hasil uji. Untuk mempelajari lebih lanjut cara menginterpretasikan hasil ini, lihat Menganalisis Hasil Firebase Test Lab for Android .

Login khusus dan input teks dengan uji Robo

Uji Robo secara otomatis menyelesaikan layar masuk yang menggunakan akun Google untuk autentikasi, kecuali jika Anda menggunakan parameter --no-auto-google-login . Itu juga dapat menyelesaikan layar masuk khusus menggunakan kredensial akun percobaan yang Anda berikan. Anda juga dapat menggunakan parameter ini untuk memberikan teks masukan khusus untuk bidang teks lain yang digunakan oleh aplikasi Anda.

Untuk melengkapi kolom teks di aplikasi Anda, gunakan parameter --robo-directives dan berikan daftar key-value pair yang dipisahkan koma, dengan key adalah nama sumber daya Android dari elemen UI target, dan value adalah string teks . Anda juga dapat menggunakan flag ini untuk memberi tahu Robo agar mengabaikan elemen UI tertentu (mis., tombol "logout"). Bidang EditText didukung tetapi bukan bidang teks dalam elemen UI WebView .

Misalnya, Anda dapat menggunakan parameter berikut untuk login khusus:

--robo-directives username_resource=username,password_resource=password

Perintah dan bendera yang tersedia

Test Lab gcloud CLI memiliki beberapa perintah dan flag yang memungkinkan Anda menjalankan pengujian dengan spesifikasi berbeda:

  • Bendera Android Test Orchestrator : Bendera untuk mengaktifkan Orchestrator, alat yang memungkinkan Anda menjalankan setiap pengujian aplikasi dalam pemanggilan Instrumentation sendiri. Test Lab selalu menjalankan Orchestrator versi terbaru.

  • Bendera uji Game Loop : Serangkaian bendera konfigurasi yang mengaktifkan dan mengontrol "mode demo" untuk mensimulasikan tindakan pemain di aplikasi game. Pelajari lebih lanjut tentang menjalankan pengujian Game Loop dengan Test Lab .

  • Bendera Uniform Sharding (dalam versi beta) : Sebuah bendera yang menentukan jumlah pecahan yang ingin Anda distribusikan secara merata kasus uji. Pecahan dijalankan secara paralel pada perangkat terpisah.

  • Bendera Sharding Manual (dalam versi beta) : Sebuah bendera yang menentukan grup paket, kelas, dan/atau kasus uji untuk dijalankan dalam shard (grup kasus uji). Pecahan dijalankan secara paralel pada perangkat terpisah.

  • Bendera profil lalu lintas jaringan (dalam versi beta) : Tanda yang menentukan profil jaringan mana yang digunakan pengujian Anda dengan perangkat fisik. Profil jaringan meniru berbagai kondisi jaringan, memungkinkan Anda menguji kinerja aplikasi pada jaringan yang tidak dapat diandalkan atau tidak dapat diprediksi.

Membuat skrip perintah gcloud dengan Test Lab

Anda dapat menggunakan skrip shell atau file batch untuk mengotomatiskan perintah pengujian aplikasi seluler yang seharusnya Anda jalankan menggunakan command line gcloud. Contoh skrip bash berikut menjalankan pengujian instrumentasi dengan waktu tunggu dua menit, dan melaporkan jika pengujian berhasil diselesaikan:

if gcloud firebase test android run --app my-app.apk --test my-test.apk --timeout 2m
then
    echo "Test matrix successfully finished"
else
    echo "Test matrix exited abnormally with non-zero exit code: " $?
fi

Kode keluar skrip

Test Lab menyediakan beberapa kode keluar yang dapat Anda gunakan untuk lebih memahami hasil pengujian yang Anda jalankan menggunakan skrip atau file batch.

Membuat skrip kode keluar untuk Test Lab

Keluar dari kode Catatan
0 Semua eksekusi uji lulus.
1 Terjadi kegagalan umum. Kemungkinan penyebabnya antara lain: nama file yang tidak ada atau kesalahan HTTP/jaringan.
2 Pengujian keluar karena perintah atau argumen yang tidak diketahui diberikan.
10 Satu atau lebih kasus uji (kelas yang diuji atau metode kelas) dalam eksekusi uji tidak lulus.
15 Firebase Test Lab tidak dapat menentukan apakah matriks pengujian lulus atau gagal, karena terjadi error yang tidak terduga.
18 Lingkungan pengujian untuk pelaksanaan pengujian ini tidak didukung karena dimensi pengujian tidak kompatibel. Kesalahan ini mungkin terjadi jika level API Android yang dipilih tidak didukung oleh jenis perangkat yang dipilih.
19 Matriks uji dibatalkan oleh pengguna.
20 Terjadi kesalahan infrastruktur pengujian.
,

Panduan ini menjelaskan cara menjalankan pengujian instrumentasi, Robo, atau Game Loop menggunakan gcloud CLI .

Untuk daftar lengkap perintah gcloud yang dapat Anda gunakan dengan aplikasi Android di Test Lab, kunjungi dokumentasi referensi untuk gcloud firebase test android .

Sebelum kamu memulai

Jika Anda belum melakukannya, tambahkan Firebase ke proyek Android Anda .

Langkah 1. Siapkan CLI gcloud

  1. Unduh Google Cloud SDK.
  2. Ini termasuk alat CLI gcloud.

  3. Pastikan instalasi Anda mutakhir:
    gcloud components update
    
  4. Masuk ke gcloud CLI menggunakan akun Google Anda:
    gcloud auth login
    
  5. Tetapkan project Firebase Anda di gcloud, dengan PROJECT_ID sebagai ID project Firebase Anda:
    gcloud config set project PROJECT_ID
    

Langkah 2. Periksa perangkat uji yang tersedia

Gunakan perintah gcloud berikut untuk melihat perangkat pengujian dan lokal yang tersedia untuk pengujian Anda.

Sebagai opsi, Anda juga dapat mengunduh contoh aplikasi Notepad untuk segera menjalankan perintah. Gunakan file biner app-debug-unaligned.apk dan file pengujian instrumentasi app-debug-test-unaligned.apk , yang terletak di NotePad/app/build/outputs/apk/ .

  • models list : Dapatkan daftar perangkat Android terkini yang tersedia untuk Anda uji.

    gcloud firebase test android models list
    

    Dalam keluaran perintah:

    • Kolom MODEL_ID berisi pengenal yang nantinya dapat Anda gunakan untuk menjalankan pengujian pada model perangkat.
    • Kolom OS_VERSION_ID berisi versi sistem operasi yang didukung oleh perangkat.

    Contoh keluaran

    gcloud firebase test android models list output

  • models describe : Dapatkan informasi lebih lanjut tentang MODEL_ID Android tertentu.

    gcloud firebase test android models describe MODEL_ID
    

    Keluarannya berisi merek model perangkat, pabrikan, versi OS, level API yang didukung, Antarmuka Biner Aplikasi (ABI) yang didukung, tanggal rilis, dan apakah perangkat itu fisik atau virtual.

  • versions list : Dapatkan daftar versi OS yang saat ini tersedia untuk diuji.

    gcloud firebase test android versions list
    

    Anda dapat menggunakan pengenal dari salah satu dari dua kolom pertama output perintah ( OS_VERSION_ID dan VERSION ), untuk menjalankan pengujian terhadap versi OS Android nanti. Jika Anda tidak menentukan versi OS Android untuk diuji, default yang tercantum di kolom TAGS akan digunakan.

    Contoh keluaran

    gcloud android versions list

  • locales list : Dapatkan daftar lokal saat ini yang tersedia untuk diuji.

    gcloud firebase test android versions list
    

    Kolom pertama dari keluaran perintah, LOCALE , berisi pengidentifikasi yang dapat Anda gunakan nanti untuk menjalankan pengujian terhadap suatu lokal. Jika Anda tidak menentukan lokal untuk diuji, bahasa Inggris digunakan sebagai lokal default.

Menjalankan tes

Setelah mengetahui berbagai model perangkat, lokal, dan versi OS yang tersedia untuk menguji aplikasi, Anda dapat menentukan perangkat menggunakan perintah gcloud firebase test android run dan flag --device untuk menjalankan pengujian Robo atau instrumentasi.

Menjalankan uji Robo

Meskipun Anda tidak memiliki pengujian instrumentasi, Anda tetap dapat mencari bug di aplikasi Anda. Gunakan uji Robo untuk melakukan tinjauan otomatis antarmuka pengguna aplikasi Anda. Uji Robo melatih aplikasi dengan melakukan analisis statis dari berbagai jalur melalui antarmuka pengguna aplikasi, lalu merayapi aplikasi untuk menemukan kerusakan dan potensi masalah lainnya.

Mari kita mulai dengan menjalankan perintah contoh:

gcloud firebase test android run \
  --type robo \
  --app app-debug-unaligned.apk \
  --device model=Nexus6,version=21,locale=en,orientation=portrait  \
  --device model=Nexus7,version=19,locale=fr,orientation=landscape \
  --timeout 90s

Parameter --type robo bersifat implisit jika tidak ada nilai --type yang ditentukan. Anda dapat melihat rangkaian lengkap opsi baris perintah untuk menjalankan pengujian dengan mengetik: gcloud help firebase test android run . Sebagai alternatif untuk menentukan semua argumen ini pada baris perintah, Anda dapat secara opsional menentukan argumen Anda dalam file argumen berformat YAML. Jalankan gcloud topic arg-files untuk mempelajari cara menggunakan fitur ini.

Lihat bagian Analisis hasil tes Anda untuk mempelajari cara menginvestigasi hasil tes dari uji Robo.

Menjalankan pengujian instrumentasi Anda

Sekarang gunakan alat baris perintah gcloud untuk menjalankan pengujian Espresso aplikasi Notepad pada konfigurasi perangkat Android yang Anda tentukan. Gunakan jenis pengujian instrumentation untuk menjalankan pengujian di app-debug-test-unaligned.apk sebagai berikut:

gcloud firebase test android run \
  --type instrumentation \
  --app app-debug-unaligned.apk \
  --test app-debug-test-unaligned.apk \
  --device model=Nexus6,version=21,locale=en,orientation=portrait  \
  --device model=Nexus7,version=19,locale=fr,orientation=landscape

Parameter --type instrumentation bersifat implisit jika APK pengujian telah ditentukan dengan --test . Sebagai alternatif untuk menentukan semua argumen ini pada baris perintah, Anda dapat secara opsional menentukan argumen Anda dalam file argumen berformat YAML. Jalankan gcloud topic arg-files untuk mempelajari cara menggunakan fitur ini.

gcloud CLI mendukung Android Test Orchestrator . Orchestrator memerlukan AndroidJUnitRunner v1.1 atau lebih tinggi. Untuk mengaktifkannya, gunakan gcloud firebase test android run with the
bendera --use-orchestrator . Untuk menonaktifkannya gunakan --no-use-orchestrator .

Anda juga dapat mengontrol cara Test Lab menjalankan pengujian instrumentasi menggunakan tanda tambahan yang tidak ditampilkan di atas. Misalnya, Anda dapat menggunakan --test-targets untuk menguji satu class atau metode class yang digunakan oleh APK pengujian Anda. Anda juga dapat mengetahui apakah pengujian Anda yang gagal benar-benar tidak stabil atau tidak dengan menggunakan --num-flaky-test-attempts , yang menentukan berapa kali eksekusi pengujian harus dicoba kembali jika satu atau lebih kasus pengujiannya gagal karena alasan apapun. Untuk mempelajari lebih lanjut, lihat pengujian gcloud firebase android run .

Laporan cakupan kode untuk pengujian instrumentasi

Test Lab mendukung alat pelaporan cakupan kode EMMA dan JaCoCo . Jika Anda memiliki salah satu alat yang terintegrasi ke dalam build untuk aplikasi, Anda bisa mendapatkan laporan cakupan kode untuk pengujian Test Lab dengan menjalankan gcloud firebase test android run dengan beberapa argumen tambahan. Jika Android Test Orchestrator tidak diaktifkan, gunakan yang berikut ini:

gcloud firebase test android run \
  --type instrumentation \
  --app your-app.apk \
  --test your-app-test.apk \
  --device model=TestDevice,version=AndroidVersion  \
  --environment-variables coverage=true,coverageFile="/sdcard/Download/coverage.ec" \
  --directories-to-pull /sdcard/Download

Jika Anda membuat laporan cakupan kode sambil menggunakan Android Test Orchestrator, ubah variabel lingkungan Anda seperti berikut:

gcloud firebase test android run \
  --type instrumentation \
  --app your-app.apk \
  --test your-app-test.apk \
  --device model=TestDevice,version=AndroidVersion  \
  --environment-variables clearPackageData=true,coverage=true,coverageFilePath="/sdcard/Download/" \
  --directories-to-pull /sdcard/Download

Saat Test Lab selesai menjalankan pengujian Anda, temukan laporan cakupan kode Anda di Google Cloud Storage:

  1. Buka tautan Firebase console yang dicetak oleh alat gcloud di atas tabel hasil pengujian di terminal Anda.
  2. Klik eksekusi uji dari daftar di link tersebut untuk membuka halaman detail eksekusi tersebut.
  3. Klik Hasil pengujian untuk membuka bucket Cloud Storage dengan hasil pengujian eksekusi tersebut.
  4. Buka artifacts/coverage.ec untuk melihat laporan cakupan kode Anda.

Analisis hasil tes Anda

Setelah beberapa menit, ringkasan dasar hasil pengujian Anda akan dicetak oleh alat gcloud:

Command test results

Keluaran dari uji coba baris perintah Anda juga menyertakan tautan untuk melihat hasil uji. Untuk mempelajari lebih lanjut cara menginterpretasikan hasil ini, lihat Menganalisis Hasil Firebase Test Lab for Android .

Login khusus dan input teks dengan uji Robo

Uji Robo secara otomatis menyelesaikan layar masuk yang menggunakan akun Google untuk autentikasi, kecuali jika Anda menggunakan parameter --no-auto-google-login . Itu juga dapat menyelesaikan layar masuk khusus menggunakan kredensial akun percobaan yang Anda berikan. Anda juga dapat menggunakan parameter ini untuk memberikan teks masukan khusus untuk bidang teks lain yang digunakan oleh aplikasi Anda.

Untuk melengkapi kolom teks di aplikasi Anda, gunakan parameter --robo-directives dan berikan daftar key-value pair yang dipisahkan koma, dengan key adalah nama sumber daya Android dari elemen UI target, dan value adalah string teks . Anda juga dapat menggunakan flag ini untuk memberi tahu Robo agar mengabaikan elemen UI tertentu (mis., tombol "logout"). Bidang EditText didukung tetapi bukan bidang teks dalam elemen UI WebView .

Misalnya, Anda dapat menggunakan parameter berikut untuk login khusus:

--robo-directives username_resource=username,password_resource=password

Perintah dan bendera yang tersedia

Test Lab gcloud CLI memiliki beberapa perintah dan flag yang memungkinkan Anda menjalankan pengujian dengan spesifikasi berbeda:

  • Bendera Android Test Orchestrator : Bendera untuk mengaktifkan Orchestrator, alat yang memungkinkan Anda menjalankan setiap pengujian aplikasi dalam pemanggilan Instrumentation sendiri. Test Lab selalu menjalankan Orchestrator versi terbaru.

  • Bendera uji Game Loop : Serangkaian bendera konfigurasi yang mengaktifkan dan mengontrol "mode demo" untuk mensimulasikan tindakan pemain di aplikasi game. Pelajari lebih lanjut tentang menjalankan pengujian Game Loop dengan Test Lab .

  • Bendera Uniform Sharding (dalam versi beta) : Sebuah bendera yang menentukan jumlah pecahan yang ingin Anda distribusikan secara merata kasus uji. Pecahan dijalankan secara paralel pada perangkat terpisah.

  • Bendera Sharding Manual (dalam versi beta) : Sebuah bendera yang menentukan grup paket, kelas, dan/atau kasus uji untuk dijalankan dalam shard (grup kasus uji). Pecahan dijalankan secara paralel pada perangkat terpisah.

  • Bendera profil lalu lintas jaringan (dalam versi beta) : Tanda yang menentukan profil jaringan mana yang digunakan pengujian Anda dengan perangkat fisik. Profil jaringan meniru berbagai kondisi jaringan, memungkinkan Anda menguji kinerja aplikasi pada jaringan yang tidak dapat diandalkan atau tidak dapat diprediksi.

Membuat skrip perintah gcloud dengan Test Lab

Anda dapat menggunakan skrip shell atau file batch untuk mengotomatiskan perintah pengujian aplikasi seluler yang seharusnya Anda jalankan menggunakan command line gcloud. Contoh skrip bash berikut menjalankan pengujian instrumentasi dengan waktu tunggu dua menit, dan melaporkan jika pengujian berhasil diselesaikan:

if gcloud firebase test android run --app my-app.apk --test my-test.apk --timeout 2m
then
    echo "Test matrix successfully finished"
else
    echo "Test matrix exited abnormally with non-zero exit code: " $?
fi

Kode keluar skrip

Test Lab menyediakan beberapa kode keluar yang dapat Anda gunakan untuk lebih memahami hasil pengujian yang Anda jalankan menggunakan skrip atau file batch.

Membuat skrip kode keluar untuk Test Lab

Keluar dari kode Catatan
0 Semua eksekusi uji lulus.
1 Terjadi kegagalan umum. Kemungkinan penyebabnya antara lain: nama file yang tidak ada atau kesalahan HTTP/jaringan.
2 Pengujian keluar karena perintah atau argumen yang tidak diketahui diberikan.
10 Satu atau lebih kasus uji (kelas yang diuji atau metode kelas) dalam eksekusi uji tidak lulus.
15 Firebase Test Lab tidak dapat menentukan apakah matriks pengujian lulus atau gagal, karena terjadi error yang tidak terduga.
18 Lingkungan pengujian untuk pelaksanaan pengujian ini tidak didukung karena dimensi pengujian tidak kompatibel. Kesalahan ini mungkin terjadi jika level API Android yang dipilih tidak didukung oleh jenis perangkat yang dipilih.
19 Matriks uji dibatalkan oleh pengguna.
20 Terjadi kesalahan infrastruktur pengujian.