Dengan senang hati kami mengumumkan Pratinjau antarmuka command line gcloud beta device-run
di Developer Device Platform (DDP), yang merupakan peningkatan pada CLI gcloud
firebase test.
CLI gcloud beta device-run menyederhanakan dan memodernisasi pelaksanaan pengujian otomatisasi
dan instrumentasi di perangkat, baik fisik maupun virtual. Pada rilis Pratinjau, Android Instrumentation dan iOS XCTest didukung. Lihat
Ringkasan Pengujian Perangkat untuk
mendapatkan petunjuk.
Ringkasan dan manfaat
Beralih dari Firebase Test Lab ke Developer Device Platform (DDP) menawarkan beberapa keuntungan utama, terutama dalam hal penghematan biaya, kecepatan eksekusi uji, proses debug lanjutan, dan dukungan bawaan untuk alur kerja yang didukung AI.
Developer yang menjalankan pengujian seluler di cloud harus beralih di antara berbagai model konfigurasi (Firebase Test Lab) atau mempertahankan pipeline tambahan dan lapisan wrapper alat (Flank).
CLI gcloud beta device-run di Developer Device Platform menggabungkan kemampuan ini langsung ke Google Cloud CLI inti. Ini menyediakan antarmuka backend yang lebih andal, deklaratif, dan skalabel yang menjalankan pengujian secara terprediksi dan efisien di perangkat fisik dan virtual.
Fitur dan kemampuan utama yang menjadikan DDP sebagai platform yang lebih unggul dibandingkan dengan Firebase Test Lab meliputi:
Smart Sharding Lanjutan
Meskipun Firebase Test Lab mengandalkan data pengaturan waktu sekali jalan untuk membagi pengujian, Smart Sharding DDP jauh lebih cerdas:
- Data historis 30 Hari: DDP menganalisis histori eksekusi hingga 30 hari untuk mendistribusikan pengujian ke shard yang stabil dan dioptimalkan.
- Pelacakan durasi khusus perangkat: DDP melacak runtime eksekusi uji per model perangkat tertentu, bukan menggunakan rata-rata platform umum di semua perangkat.
- Pemodelan overhead Orchestrator: DDP memperhitungkan overhead startup Android Test Orchestrator untuk setiap instance pengujian, sehingga memastikan shard tidak melebihi durasi targetnya.
Coba lagi yang terperinci dan hemat biaya
Di Test Lab, jika satu kasus pengujian dalam shard gagal, seluruh shard (berpotensi puluhan pengujian) harus dicoba lagi, yang meningkatkan waktu eksekusi dan biaya penagihan. DDP memperkenalkan mekanisme percobaan ulang yang sangat efisien:
- Coba lagi tingkat kasus pengujian yang ditargetkan: Mengisolasi dan mencoba lagi hanya kasus pengujian spesifik yang gagal dalam shard.
- Pengujian ulang uji tidak stabil secara berurutan: Mengeksekusi pengujian ulang untuk uji tidak stabil secara berurutan secara default (bukan secara serentak seperti Test Lab). Menggabungkan hal ini dengan percobaan ulang tingkat kasus pengujian akan mengurangi total eksekusi pengujian secara drastis, sehingga menghasilkan penghematan yang signifikan pada biaya penagihan perangkat.
Dukungan lanjutan untuk pengujian Android
DDP mengatasi batasan lama di API pengujian Test Lab:
- Khusus APK pengujian (tanpa aplikasi dummy): Test Lab sebelumnya memerlukan aplikasi dummy untuk menjalankan pengujian yang melakukan instrumentasi sendiri. DDP mendukung menjalankan uji instrumentasi hanya dengan APK pengujian.
- Waktu tunggu shard yang diperpanjang: DDP meningkatkan batas eksekusi maksimum untuk shard uji instrumentasi tunggal dari batas 45 menit Test Lab menjadi 3 jam.
- Beberapa Orchestrator: DDP mendukung beberapa versi Android Test Orchestrator.
- Dukungan biner C++ bawaan: DDP mendukung eksekusi program biner C++ Android.
Interaksi perangkat yang ditingkatkan dan proses debug lanjutan
DDP memberikan interaksi yang lebih mendalam di perangkat dan artefak proses debug yang jauh lebih kaya daripada yang tersedia di Test Lab:
- Lokasi tiruan: DDP mendukung peniruan koordinat GPS perangkat.
- Dukungan ApkSet: Developer dapat menginstal ApkSet (file .
apks) langsung ke perangkat jarak jauh. - Proses debug lanjutan: DDP mengekspos log sistem dan informasi
debug penting, termasuk
dumpsysdanbugreport, langsung ke developer.
Katalog Perangkat yang sangat skalabel
DDP menggantikan katalog lingkungan Test Lab yang kaku dan berat dengan Device Catalog API yang didesain ulang sepenuhnya:
- Pemfilteran sisi server: Mempercepat kueri dan mengurangi latensi payload dengan memungkinkan developer memfilter perangkat di sisi server.
- Data ketersediaan real-time: DDP memberikan informasi ketersediaan perangkat real-time langsung ke Device Run sehingga Anda dapat memilih perangkat dengan ketersediaan tinggi dan menghindari waktu antrean yang lama—fitur yang tidak dimiliki Test Lab.
Memilih jalur migrasi
Mengotomatiskan migrasi Anda dengan AI
Untuk mempermudah transisi ini, kami telah mengembangkan skill agen terjemahan khusus: migrating-device-run.
Jika Anda menggunakan agen coding AI, seperti Antigravity, Claude Code, Codex, Anda dapat dengan mudah menerjemahkan skrip pengujian kustom. Cukup salin URL skema keterampilan migrasi dan tempelkan ke ruang kerja asisten AI Anda seperti yang dijelaskan di sini.
Template perintah migrasi
You are an expert migration assistant. I want to migrate my test command and
configuration to the new `gcloud beta device-run` command format.
Use this migration guideline as your ruleset:
https://docs.cloud.google.com/developer-device-platform/device-run/migrate/migration-skill
Translate the following command and configuration to the new `gcloud beta
device-run` CLI: (Insert your raw Firebase Test / Flank YAML or bash script
here.)
Migrasikan secara manual
Ikuti terjemahan perintah dan tanda kami untuk bermigrasi secara manual dari Firebase Test Lab ke DDP. Saat Anda bersiap untuk bermigrasi, perhatikan perbedaan struktural berikut:
- Arsitektur CLI yang berfokus pada resource:
gcloud beta device-runmengadopsi pola perintah<resource> <verb>modern di tiga grup resource utama:devices: Akses CLI langsung ke inventaris katalog perangkat dan detail perangkat yang komprehensif, menggantikan perintahfirebase test android/ios models/versions/localeslama yang terfragmentasi.software-versions: Akses CLI langsung ke versi software yang didukung (seperti versi Xcode dan Android Test Orchestrator), menggantikanfirebase test ios xcode-versions listlama.sessions: Pengelolaan siklus proses sesi end-to-end langsung di terminal, termasuksessions submit instrumentation,sessions submit xctest,sessions wait,sessions describe [--full],sessions list, dansessions cancel.
- Struktur subperintah: Jenis pengujian distandardisasi dan disusun bertingkat di bagian
sessions submitsebagai subperintah yang jelas, bukan menggunakan tanda jenis.- DDP:
gcloud beta device-run sessions submit instrumentation(Android) ataugcloud beta device-run sessions submit xctest(iOS) - Test Lab:
gcloud firebase test android run --type=instrumentation(Android) ataugcloud firebase test ios run --type=xctest(iOS)
- DDP:
- Aplikasi yang dijamakkan dan digabungkan: APK standar dan tambahan digabungkan
dalam daftar flag
--appsyang dijamakkan (mis.--apps=app.apk,helper.apk) bukan dibagi menjadi--appdan--additional-apks. - Argumen daftar dan kamus terstruktur: Mengganti file atau daftar lingkungan yang dipisahkan koma dengan format daftar dan kamus CLI terstruktur:
--other-files-to-push KEY=VALUE,--additional-test-options KEY=VALUE,--paths-to-pull, dan--test-targets. - Kontrol percobaan ulang dan penyeimbangan beban yang terpadu: Dukungan lancar untuk Penyeimbangan Beban Seragam dan Penyeimbangan Beban Pintar, beserta percobaan ulang paralel (
--flaky-test-parallel-retry,--flaky-test-retry-level) dan diagnostik runtime (--dumpsys,--bugreport,--video). - Eksekusi asinkron:
gcloud beta device-runmendukung eksekusi asinkron, sehingga Anda dapat menjalankan pengujian tanpa harus menunggu hingga selesai. Gunakangcloud beta device-run sessions wait <SESSION_ID>untuk menunggu penyelesaian. - Konfigurasi YAML deklaratif (
--flags-file): Tim yang bermigrasi dari Flank yang lebih memilih file YAML yang dikontrol versinya daripada string skrip shell dapat menggunakan dukungan--flags-file=device-run-flags.yamluniversalgcloud.
Langkah berikutnya
- Gunakan Panduan memulai cepat kami untuk menyiapkan Platform Perangkat Developer.
- Jelajahi Katalog Perangkat kami untuk menemukan semua perangkat yang tersedia.
- Pelajari Device Run untuk mulai menjalankan pengujian.
- Buka terjemahan perintah dan flag kami untuk melihat pemetaan flag Test Lab dan Flank ke DDP.