Panduan ini menjelaskan cara menyiapkan XCTest untuk pengujian di Firebase Test Lab.
Langkah 1: Konfigurasikan lokasi Data Turunan project Anda
Xcode menempatkan artefak iOS yang dikompilasi, termasuk semua pengujian yang Anda build, di dalam direktori Data Turunan. Anda dapat menggunakan lokasi default untuk direktori itu jika Anda mau, tetapi biasanya akan lebih membantu jika Anda memilih tempat yang lebih mudah diakses untuk file tersebut, terutama jika Anda sering menjalankan pengujian dengan Test Lab:
- Buka project Anda di Xcode.
- Di panel menu macOS, pilih File > Project Settings...
- Ubah drop-down Derived Data dari Default Location ke Custom Location.
- Pada kolom di bawah drop-down, pilih lokasi Xcode untuk menampilkan hasil pengujian Anda. (Ini adalah FOLDER_WITH_TEST_OUTPUT Anda)
Langkah 2: Build file pengujian umum
Test Lab menjalankan pengujian unit dan pengujian UI menggunakan framework XCTest. Untuk menjalankan XCTest aplikasi pada perangkat Test Lab, buat XCTest untuk pengujian pada Perangkat iOS Generik:
- Dari drop-down perangkat di bagian atas jendela ruang kerja Xcode, pilih Generic iOS Device.
- Di panel menu macOS, pilih Product > Build For > Testing.
Sebagai alternatif, Anda dapat mem-build XCTest dari command line. Gunakan perintah berikut di terminal:
project
xcodebuild -project PATH/TO/YOUR_WORKSPACE/YOUR_PROJECT.xcodeproj \ -scheme YOUR_SCHEME \ -derivedDataPath FOLDER_WITH_TEST_OUTPUT \ -sdk iphoneos build-for-testing
ruang kerja
xcodebuild -workspace PATH/TO/YOUR_WORKSPACE.xcworkspace \ -scheme YOUR_SCHEME \ -derivedDataPath FOLDER_WITH_TEST_OUTPUT \ -sdk iphoneos build-for-testing
Langkah 3: Tanda tangani pengujian Anda dan verifikasi
Pastikan semua artefak dalam aplikasi dan pengujian ditandatangani. Misalnya, Anda dapat melakukannya melalui Xcode dengan menentukan setelan penandatanganan seperti penyediaan profil dan identitas. Untuk mengetahui informasi selengkapnya, lihat: Penandatanganan Kode Apple
Verifikasi tanda tangan aplikasi dengan menjalankan
codesign --verify --deep --verbose /path/to/MyApp.app
dengan "MyApp" adalah nama aplikasi di dalam folder yang diekstrak. Opsi ini bervariasi untuk setiap project. Output yang diharapkan adalahMyApp.app: valid on disk
.Jika menjalankan XCUITest, Anda harus memverifikasi pengujian dan runner dengan menjalankan
codesign --verify --deep --verbose /path/to/MyTest-Runner.app
dengan "MyTest" adalah nama runner di dalam folder yang diekstrak. Opsi ini bervariasi untuk setiap project. Output yang diharapkan adalahMyTest-Runner.app: valid on disk
.
Langkah 4: Kemas aplikasi Anda dan uji untuk diupload
Setelah pengujian berhasil di-build, 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
Anda juga dapat mengemas pengujian dengan mengompresi file pengujian secara manual:
Buka Finder dan buka
FOLDER_WITH_TEST_OUTPUT
.Buka folder yang memiliki nama project Anda sebagai awalan, lalu buka folder
Build/Products
di dalamnya.Pilih folder
Debug-iphoneos
danYOUR_SCHEME_iphoneosDEPLOYMENT_TARGET-arm64.xctestrun
, lalu kompresi.
Langkah 5: (Opsional) Jalankan pengujian secara lokal
Sebelum menjalankan pengujian dengan Test Lab, Anda dapat menjalankannya secara lokal dengan perangkat yang terhubung ke USB untuk memeriksa perilakunya:
xcodebuild test-without-building \ -xctestrun "Derived Data/Build/Products/YOUR_SCHEME.xctestrun" \ -destination id=your-phone-id
Langkah berikutnya
Upload dan jalankan pengujian Anda di Firebase console atau gcloud CLI.