Android Vendor Test Suite (VTS) menyediakan pengujian ekstensif terhadap hal berikut:
- Kernel
- Hardware abstraction layer (HAL)
VTS berjalan di komputer {i>desktop<i} dan menjalankan {i>test case<i} secara langsung pada perangkat yang terpasang atau pada emulator. Mirip dengan CTS, VTS merupakan rangkaian pengujian otomatis yang menggunakan komponen perangkat lunak utama berikut ini.
- Federasi Perdagangan VTS rangkaian pengujian berjalan pada mesin host Anda dan mengelola pengujian dalam proses eksekusi. Cloud Endpoints menawarkan kemampuan untuk Mengonfigurasi Sharding di beberapa perangkat dalam pengujian (DUT). Anda juga dapat menggunakan metode Suite Percobaan ulang fitur ini untuk mencoba ulang kegagalan saja, bukan seluruh rangkaian pengujian, sehingga sangat mengurangi waktu {i>re-run<i}.
- Masing-masing kasus pengujian dijalankan di DUT. Kasus pengujian bisa berupa pengujian gaya {i>gtest<i}, pengujian {i>kernel<i}, atau pengujian gaya JUnit-style yang ditulis dalam Java.
Tipe pengujian
Berbagai jenis pengujian VTS dijelaskan di bagian berikut.
pengujian gaya gtest
Sebagian besar pengujian di VTS adalah pengujian gaya gtest yang memeriksa HAL
terlepas dari implementasi layanan. Tesnya adalah
yang ditulis dalam C++ dan
berjalan di perangkat. Gtest VTS tipikal melakukan iterasi melalui
setiap instance antarmuka tertentu, dan menjalankan semua kasus pengujian
terhadapnya. Lihat VtsHalHealthStorageV1_0TargetTest
sebagai contoh.
Pengujian kernel Linux
Kselftest (external/linux-kselftest) adalah kumpulan pengujian yang termasuk dalam repositori {i>kernel<i} Linux di
tools/testing/selftests
, yang 23 di antaranya termasuk dalam VTS untuk dijalankan di ARM.Project Pengujian Linux (eksternal/ltp) pengujian memvalidasi keandalan, keandalan, dan stabilitas kernel Linux.
Pengujian gaya JUnit
Sekumpulan kecil pengujian berbasis {i>host<i} di VTS adalah pengujian gaya JUnit, misalnya,
KernelApiSysfsTest
Pengujian Java diimplementasikan sebagai
BaseHostJUnit4Test
,
yang terkait dengan perangkat pengujian dan dapat menjalankan shell
untuk melakukan validasi.
Pengujian Python3 mandiri
Beberapa uji VTS, seperti
vts_treble_sys_prop_test
ditulis dalam Python3. Tujuan
Pengujian berbasis Python diimplementasikan sebagai unittest.TestCase
dan setiap pengujian
{i>casing<i} dapat berinteraksi dengan
perangkat melalui perintah {i>shell<i}.