Buka konsol

Memulai Firebase Test Lab dari Command Line gcloud

Firebase Test Lab dapat digunakan untuk menguji aplikasi iOS Anda di beberapa perangkat melalui antarmuka command line gcloud. Baca selengkapnya untuk mengetahui cara memulai.

Membuat project Firebase

Jika belum ada project Firebase untuk aplikasi Anda, buka Firebase console lalu klik Buat Project Baru untuk membuat project baru. Anda memerlukan izin kepemilikan atau izin untuk mengedit dalam project.

Anda dapat menggunakan Test Lab untuk melakukan sejumlah pengujian harian yang terbatas pada paket Spark dan Flame. Untuk menggunakan Test Lab tanpa batas kuota harian, Anda harus melakukan upgrade ke paket Firebase Blaze.

Mengonfigurasi lingkungan Google Cloud SDK lokal

  1. Download fitur command-line gcloud jika belum: Google Cloud SDK
  2. Pastikan Anda menginstal Cloud SDK yang terbaru dan menyertakan perintah gcloud firebase:
    gcloud components update
  3. Pastikan kredensial autentikasi Anda adalah yang terbaru:
    gcloud auth login
  4. Tetapkan project Anda saat ini di gcloud:
    gcloud config set project PROJECT_ID

Membuat XCtests untuk aplikasi Anda

Untuk membuat pengujian ini, gunakan perintah berikut di terminal:

project

xcodebuild -project PATH/TO/YOUR_WORKSPACE.xcodeproj \
  -scheme YOUR_SCHEME \
  -derivedDataPath FOLDER_WITH_TEST_OUTPUT \
  -sdk iphoneos build-for-testing

workspace

xcodebuild -workspace PATH/TO/YOUR_WORKSPACE.xcworkspace \
  -scheme YOUR_SCHEME \
  -derivedDataPath FOLDER_WITH_TEST_OUTPUT \
  -sdk iphoneos build-for-testing

Setelah pengujian berhasil dibuat, kompres menjadi zip untuk diupload ke Test Lab:

cd FOLDER_WITH_TEST_OUTPUT/Build/Products ; \
zip -r MyTests.zip Debug-iphoneos YOUR_SCHEME_iphoneosDEPLOYMENT_TARGET-arm64.xctestrun

Menjalankan pengujian Anda

Pilih dimensi uji Anda

Dengan Test Lab, Anda dapat menjalankan pengujian pada berbagai versi iOS, perangkat, orientasi layar, dan lokal. Konfigurasi ini dikenal sebagai dimensi uji pengujian. Untuk melihat opsi setiap dimensi, ganti models, versions, atau locales untuk dimension dalam perintah berikut:

gcloud firebase test ios dimension list

Orientasi layar agak lebih sederhana, karena satu-satunya pilihannya adalah portrait dan landscape.

Lihat daftar dimensi uji, dan pilih beberapa kombinasi yang ingin Anda gunakan untuk menjalankan pengujian. Jika menggunakan paket Spark atau Flame, Anda dapat menjalankan maksimal 5 kombinasi per hari. Jika menggunakan paket Blaze, Anda dapat menjalankan pengujian pada kombinasi yang tidak terbatas jumlahnya per hari, tetapi Anda hanya dapat menyertakan maksimal 200 kombinasi pada setiap pengujian yang dijalankan. Untuk mengetahui informasi lebih lanjut tentang harga dan batas pengujian, lihat Paket Harga.

Menjalankan pengujian

Setelah memilih serangkaian dimensi uji, Anda dapat meminta Test Lab menjalankan pengujian menggunakan firebase test ios run. Untuk setiap kombinasi dimensi uji yang ingin Anda uji, sertakan tanda --device tersendiri:

gcloud firebase test ios run --test PATH/TO/MyTests.zip \
  --device model=MODEL_ID_1,version=VERSION_ID_1,locale=LOCALE_1,orientation=ORIENTATION_1 \
  --device model=MODEL_ID_2,version=VERSION_ID_2,locale=LOCALE_2,orientation=ORIENTATION_2 \
  etc...

Ada kemungkinan bahwa pengujian Anda akan gagal, karena versi Xcode yang digunakan untuk pengujian tidak kompatibel dengan versi Xcode default yang digunakan oleh Test Lab. Untuk memilih versi Xcode untuk pengujian, gunakan tanda --xcode-version:

gcloud firebase test ios run --test PATH/TO/MyTests.zip \
  --device model=MODEL_ID_1,version=VERSION_ID_1,locale=LOCALE_1,orientation=ORIENTATION_1 \
  --xcode_version=9.4

Menganalisis hasil pengujian

Setelah pengujian selesai, fitur gcloud mencetak ringkasan dasar hasil pengujian Anda. Sebagai bagian dari ringkasan, fitur ini menyertakan link untuk melihat hasil yang lebih detail di Firebase console. Untuk mempelajari lebih lanjut tentang cara menafsirkan hasil ini, lihat Menganalisis Hasil Pengujian Firebase.

Mengotomatisasi pengujian di masa depan

Membuat skrip perintah gcloud dengan Test Lab

Anda dapat menggunakan skrip shell atau file batch untuk mengotomatiskan perintah pengujian aplikasi seluler yang diinginkan, atau jalankan dengan baris perintah gcloud. Contoh skrip bash ini menjalankan XCTest dengan waktu tunggu 2 menit dan melaporkan bahwa pengujian berjalan dengan sukses:

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

Membuat skrip exit code

Test Lab menyediakan beberapa exit code yang dapat Anda gunakan agar lebih memahami hasil pengujian yang dijalankan menggunakan skrip atau file batch.

Membuat skrip exit code untuk Test Lab

Exit Code Catatan
0 Semua pelaksanaan pengujian lulus.
1 Terjadi kesalahan umum. Kemungkinan penyebab: nama file tidak ada atau error pada HTTP/jaringan.
2 Pengujian dikeluarkan karena ada perintah atau argumen yang tidak dikenal.
10 Satu atau beberapa kasus pengujian (class atau metode class yang diuji) dalam pelaksanaan pengujian tidak lulus.
15 Firebase Test Lab tidak bisa menentukan apakah matriks pengujian lulus atau gagal karena ada error yang tidak terduga.
19 Matriks pengujian dibatalkan oleh pengguna.
20 Terjadi error pada infrastruktur pengujian.

Langkah berikutnya

Pelajari Test Lab untuk SDK command line pada iOS: gcloud firebase test ios