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

Uji dengan gcloud CLI

Panduan ini menjelaskan cara menjalankan pengujian XCTest atau Game Loop menggunakan gcloud CLI.

Langkah 1 : Konfigurasikan lingkungan Google Cloud SDK lokal Anda

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

  3. Pastikan penginstalan Anda terbaru dan menyertakan perintah gcloud firebase : l10n
          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 : Jalankan pengujian Anda

Jalankan XCTest

  1. Unggah file .zip pengujian Anda dengan menjalankan perintah berikut (jika Anda belum memaketkan aplikasi Anda, lihat Mengemas XCTest Anda ):

    cd FOLDER_WITH_TEST_OUTPUT/Build/Products ; \
    zip -r MyTests.zip Debug-iphoneos YOUR_SCHEME_iphoneosDEPLOYMENT_TARGET-arm64.xctestrun
  2. Pilih dimensi pengujian Anda.

    Test Lab memungkinkan Anda menjalankan pengujian pada berbagai versi iOS, perangkat, orientasi layar, dan lokal. Konfigurasi ini dikenal sebagai dimensi pengujian pengujian . Untuk melihat opsi untuk setiap dimensi (misalnya, versi Xcode yang didukung untuk versi iOS perangkat), gantikan models , versions , atau locales untuk dimension dalam perintah berikut:

    gcloud firebase test ios dimension list

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

    Lihat daftar dimensi pengujian, dan pilih beberapa kombinasi yang ingin Anda gunakan untuk menjalankan pengujian. Kunjungi Paket Harga untuk melihat jumlah maksimum kombinasi yang dapat Anda jalankan per hari.

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

    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 ketidakcocokan antara versi Xcode yang digunakan untuk membuat pengujian dan versi Xcode default yang digunakan oleh Test Lab. Untuk menentukan versi Xcode yang didukung untuk pengujian Anda, gunakan --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=11.3

Uji Hak Khusus

Untuk menguji hak yang memerlukan ID Aplikasi eksplisit, Anda dapat melakukannya dengan menyetel --test-special-entitlements . Test Lab menandatangani ulang aplikasi dengan pengenal bundel baru untuk mendukung hak khusus, jadi pastikan tidak ada sumber daya di file zip Anda yang berisi referensi langsung ke id bundel aplikasi.

Pemberitahuan Dorong

Untuk mengesahkan permintaan pemberitahuan push, pengguna dapat membuat token web JSON dengan menggunakan kunci penandatanganan pribadi bersama dengan ID Kunci - C7FD9DJAA8 dan ID Tim - 9CKCGNNUQN . Token yang dihasilkan akan berlaku selama satu jam dan perlu disegarkan setiap 60 menit. Baca lebih lanjut tentang Membuat Koneksi Berbasis Token ke APN.

Grup aplikasi

ID grup aplikasi bersifat unik secara universal. Artinya, saat kami menandatangani ulang aplikasi pengguna, kami hanya dapat menggunakan ID grup aplikasi yang terkait dengan akun developer Test Lab. Jika pengujian Anda bergantung pada grup aplikasi, pengujian Anda akan gagal.

Jalankan pengujian Game Loop

Jalankan perintah gcloud beta firebase test ios run dan gunakan flag berikut untuk mengonfigurasi proses:

Tanda untuk pengujian Game Loop
--type

Wajib : Menentukan jenis pengujian iOS yang ingin Anda jalankan. Anda dapat memasukkan tipe pengujian xctest (default) atau game-loop .

--app

Wajib : Jalur absolut (GCS atau sistem file) ke file IPA aplikasi Anda. Bendera ini hanya berlaku saat menjalankan pengujian Game Loop.

--scenario-numbers

Loop (alias skenario) yang ingin Anda jalankan di aplikasi Anda. Anda dapat memasukkan satu loop, daftar atau loop, atau rentang loop. Lingkaran default adalah 1.

Misalnya, --scenario-numbers=1-3,5 menjalankan loop 1, 2, 3, dan 5.

--device-model

Perangkat fisik tempat Anda ingin menjalankan pengujian (cari tahu perangkat mana yang tersedia yang dapat Anda gunakan).

--timeout

Durasi maksimum yang Anda inginkan untuk menjalankan pengujian. Anda dapat memasukkan bilangan bulat untuk menyatakan durasi dalam detik, atau bilangan bulat dan pencacahan untuk menyatakan durasi sebagai satuan waktu yang lebih lama.

Sebagai contoh:

  • --timeout=200 memaksa pengujian Anda untuk berhenti saat berjalan hingga 200 detik.
  • --timeout=1h memaksa pengujian Anda untuk berhenti saat berjalan hingga satu jam.

Misalnya, perintah berikut menjalankan pengujian Game Loop yang menjalankan loop 1, 4, 6, 7, dan 8 pada iPhone 8 Plus:

gcloud beta firebase test ios run
 --type game-loop --app path/to/my/App.ipa --scenario-numbers 1,4,6-8
 --device-model=iphone8plus

Untuk informasi selengkapnya tentang gcloud CLI, lihat dokumentasi referensi .

Langkah 4 (Opsional) : Otomatiskan pengujian mendatang yang Anda buat

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 ini menjalankan XCTest dengan batas waktu dua menit, dan melaporkan jika pengujian berhasil diselesaikan:

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

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.

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.
19 Matriks uji dibatalkan oleh pengguna.
20 Terjadi kesalahan infrastruktur pengujian.

Langkah 5 : Selidiki hasil tes

Saat tes dimulai, Anda menerima tautan ke halaman Hasil Tes . Pengujian dapat memakan waktu beberapa menit untuk dijalankan, bergantung pada jumlah konfigurasi berbeda yang telah Anda pilih dan durasi waktu tunggu pengujian yang ditetapkan untuk pengujian Anda. Setelah pengujian Anda berjalan, Anda dapat meninjau hasil pengujian. Lihat Menganalisis Hasil Test Lab Firebase untuk mempelajari lebih lanjut cara menginterpretasikan hasil pengujian Anda.

Langkah berikutnya

Baca dokumentasi Google Cloud SDK untuk mempelajari opsi pengujian yang tersedia secara umum atau dalam versi beta .