Konten ini ditujukan untuk pengembang platform Android. Sebelum memahami bagaimana pengujian dilakukan pada platform Android, silakan lihat arsitektur platform Android untuk gambaran umum.
Kemudian pelajari teknologi tepat yang tersedia untuk Anda di bagian ini, seperti Vendor Test Suite (VTS) serta berbagai video dan tutorial codelabnya .
Perhatikan juga mekanisme pengujian khusus keamanan yang tersedia untuk mendeteksi dan memperkuat perangkat Anda terhadap kerentanan.
Untuk pengujian aplikasi, mulailah dengan Dasar-Dasar Pengujian dan lakukan Codelab Pengujian Android menggunakan sampel yang disediakan.
Terakhir, perhatikan bahwa pengujian pra-pengiriman dasar tersedia untuk Anda melalui Repo Hooks yang dapat menjalankan linter, memeriksa pemformatan, dan memicu pengujian unit sebelum melanjutkan, seperti mengunggah penerapan. Perhatikan bahwa kait ini dinonaktifkan secara default. Lihat pengenalan Repo Hooks untuk lebih jelasnya.
Apa dan bagaimana tesnya
Pengujian platform biasanya berinteraksi dengan satu atau beberapa layanan sistem Android, atau lapisan Lapisan Abstraksi Perangkat Keras (HAL), menjalankan fungsionalitas subjek yang diuji, dan menegaskan kebenaran hasil pengujian.
Dengan demikian, pengujian platform dapat:
- melatih API kerangka kerja melalui kerangka aplikasi; API spesifik yang diterapkan dapat mencakup:
- API publik yang ditujukan untuk aplikasi pihak ketiga
- API tersembunyi yang ditujukan untuk aplikasi dengan hak istimewa, yaitu API sistem
- API pribadi (@sembunyikan, atau dilindungi, paket pribadi)
- memanggil layanan sistem Android melalui pengikat mentah/proksi IPC secara langsung
- berinteraksi langsung dengan HAL melalui API tingkat rendah atau antarmuka IPC
Tipe 1 dan 2 biasanya ditulis sebagai tes instrumentasi , sedangkan tipe 3 biasanya ditulis sebagai GTests .
Untuk mempelajari lebih lanjut, lihat contoh menyeluruh kami:
Pahami alat-alat ini karena alat ini merupakan bagian integral dari pengujian di Android.
Rangkaian Uji Kompatibilitas (CTS)
Rangkaian Pengujian Kompatibilitas Android adalah rangkaian berbagai jenis pengujian, yang digunakan untuk memastikan kompatibilitas penerapan kerangka kerja Android di seluruh mitra OEM, dan di seluruh rilis platform. Rangkaian ini juga mencakup uji instrumentasi dan kerangka GTest.
Pengujian CTS dan platform tidak bersifat eksklusif, dan berikut adalah beberapa pedoman umum:
- jika suatu pengujian menegaskan kebenaran fungsi/perilaku framework API, dan pengujian tersebut harus diterapkan di seluruh mitra OEM, maka pengujian tersebut harus dilakukan dalam CTS
- jika suatu 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 dalam AOSP), pengujian tersebut hanya boleh berupa pengujian platform
Rangkaian Uji Vendor (VTS)
Vendor Test Suite (VTS) mengotomatiskan pengujian kernel HAL dan OS. Untuk menggunakan VTS guna menguji implementasi sistem Android bawaan, siapkan lingkungan pengujian, lalu uji patch menggunakan paket VTS.
Infrastruktur pengujian Federasi Perdagangan
Federasi Perdagangan (Tradefed atau disingkat TF) adalah kerangka pengujian berkelanjutan yang dirancang untuk menjalankan pengujian pada perangkat Android. TF dapat menjalankan tes fungsional secara lokal, di meja Anda, dalam checkout platform Anda. Ada dua file yang diperlukan untuk menjalankan pengujian di TF, sumber pengujian java dan konfigurasi XML. Lihat RebootTest.java dan reboot.xml sebagai contoh.
Men-debug
Bagian Debugging merangkum alat yang berguna dan perintah terkait untuk debugging, penelusuran, dan pembuatan profil kode platform Android bawaan saat mengembangkan fitur tingkat platform.