Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

Pengujian Platform Android

Konten ini ditujukan untuk pengembang platform Android. Sebelum memahami bagaimana pengujian dilakukan pada platform Android, silakan merujuk ke arsitektur platform Android untuk gambaran.

Kemudian menyelidiki teknologi yang tepat tersedia untuk Anda di bagian ini, seperti vendor Test Suite (VTS) dan segudang video dan codelab tutorial .

Juga perhatikan keamanan khusus menguji mekanisme yang tersedia untuk mendeteksi dan mengeras perangkat Anda terhadap kerentanan.

Untuk pengujian aplikasi, mulai dengan Dasar-dasar Pengujian dan melakukan Android Pengujian Codelab menggunakan sampel yang disediakan.

Akhirnya, perhatikan pengujian presubmit dasar tersedia untuk Anda melalui Repo Hooks yang dapat berjalan Linter, periksa format, dan tes unit memicu sebelum melanjutkan, seperti upload komit. Perhatikan bahwa kait ini dinonaktifkan secara default. Lihat Repo Kait pengantar untuk lebih jelasnya.

Apa dan bagaimana cara mengujinya?

Pengujian platform biasanya berinteraksi dengan satu atau beberapa layanan sistem Android, atau lapisan Hardware Abstraction Layer (HAL), melatih fungsionalitas subjek yang diuji, dan menegaskan kebenaran hasil pengujian.

Dengan demikian, pengujian platform dapat:

  1. melatih API kerangka kerja melalui kerangka kerja aplikasi; API tertentu yang dijalankan dapat mencakup:
    • API publik yang ditujukan untuk aplikasi pihak ketiga
    • API tersembunyi yang ditujukan untuk aplikasi istimewa, yaitu API sistem
    • API pribadi (@sembunyikan, atau dilindungi, paket pribadi)
  2. memanggil layanan sistem Android melalui pengikat mentah/proksi IPC secara langsung
  3. berinteraksi langsung dengan HAL melalui API tingkat rendah atau antarmuka IPC

Jenis 1 dan 2 biasanya ditulis sebagai tes instrumentasi , sedangkan tipe 3 biasanya ditulis sebagai tes asli menggunakan gtest framework.

Untuk mempelajari lebih lanjut, lihat contoh ujung ke ujung kami:

Kenali alat-alat ini, karena alat-alat ini bersifat intrinsik untuk pengujian di Android.

Suite Uji Kompatibilitas (CTS)

Android Uji Kompatibilitas Suite adalah suite berbagai jenis tes, digunakan untuk memastikan kompatibilitas implementasi framework Android di seluruh mitra OEM, dan seluruh platform rilis. Suite ini juga mencakup tes instrumentasi dan tes asli (juga menggunakan kerangka kerja gtest).

CTS dan pengujian platform tidak saling eksklusif, dan berikut adalah beberapa panduan umum:

  • jika tes menegaskan kebenaran fungsi/perilaku kerangka kerja API, dan itu harus diterapkan di seluruh mitra OEM, itu harus di CTS
  • jika pengujian dimaksudkan untuk menangkap regresi selama siklus pengembangan platform, dan mungkin memerlukan izin istimewa untuk melaksanakannya, dan mungkin bergantung pada detail implementasi (seperti yang dirilis di AOSP), pengujian tersebut seharusnya hanya pengujian platform

Vendor Test Suite (VTS)

The vendor Test Suite (VTS) mengotomatiskan HAL dan OS kernel pengujian. Untuk menggunakan VTS guna menguji implementasi sistem asli Android, siapkan lingkungan pengujian lalu uji patch menggunakan paket VTS.

Infrastruktur Pengujian Federasi Perdagangan

Federasi Perdagangan (tradefed atau TF untuk pendek) adalah kerangka uji kontinyu dirancang untuk menjalankan tes pada perangkat Android. TF dapat menjalankan tes fungsional secara lokal, di meja Anda, di dalam platform checkout Anda. Ada dua file yang diperlukan untuk menjalankan pengujian di TF, sumber pengujian java dan konfigurasi XML. Lihat RebootTest.java dan reboot.xml untuk contoh.

Men-debug

The Debugging Bagian merangkum alat yang berguna dan perintah terkait untuk debugging, tracing, dan profil kode platform Android asli ketika mengembangkan fitur platform-tingkat.