Mulai 27 Maret 2025, sebaiknya gunakan android-latest-release, bukan aosp-main, untuk mem-build dan berkontribusi pada AOSP. Untuk mengetahui informasi selengkapnya, lihat Perubahan pada AOSP.
Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Android Vendor Test Suite (VTS) menyediakan
pengujian yang ekstensif pada hal berikut:
Kernel
Hardware abstraction layer (HAL)
VTS berjalan di
komputer desktop dan mengeksekusi kasus pengujian langsung di perangkat yang terpasang atau
di emulator. Serupa dengan CTS, VTS adalah
suite pengujian otomatis yang menggunakan komponen software utama berikut:
Harness pengujian Trade Federation
VTS berjalan di mesin host Anda dan mengelola eksekusi
pengujian. Fitur ini menawarkan kemampuan untuk
Mengonfigurasi sharding
di beberapa perangkat yang sedang diuji (DUT). Anda juga dapat menggunakan
fitur Suite Retry
untuk mencoba ulang hanya kegagalan, bukan seluruh rangkaian pengujian,
yang sangat mengurangi waktu pengulangan.
Setiap kasus pengujian dijalankan di DUT. Kasus pengujian
dapat berupa pengujian gaya GTest, pengujian kernel, atau pengujian gaya JUnit yang ditulis dalam
Java.
Tipe pengujian
Berbagai jenis pengujian VTS dijelaskan di bagian berikut.
Pengujian bergaya GTest
Sebagian besar pengujian di VTS adalah pengujian bergaya GTest yang memeriksa penerapan
HAL. Pengujian
ditulis dalam C++ dan berjalan di perangkat. GTest VTS standar melakukan iterasi melalui
setiap instance antarmuka tertentu, dan menjalankan semua kasus pengujian
terhadapnya. Lihat VtsHalHealthStorageV1_0TargetTest
untuk mengetahui contohnya.
Pengujian kernel Linux
Kselftest (external/linux-kselftest)
adalah kumpulan pengujian yang disertakan dalam repositori kernel Linux
di tools/testing/selftests, yang 23 di antaranya disertakan dalam VTS untuk dijalankan di ARM.
Pengujian Project Pengujian Linux (external/ltp)
memvalidasi keandalan, keandalan, dan stabilitas kernel Linux.
Pengujian gaya JUnit
Serangkaian kecil pengujian yang didorong host di VTS adalah pengujian bergaya JUnit, misalnya,
KernelApiSysfsTest.
Pengujian Java diterapkan sebagai
BaseHostJUnit4Test,
yang dikaitkan dengan perangkat pengujian dan dapat menjalankan perintah
shell untuk melakukan validasi.
Pengujian Python3 mandiri
Beberapa pengujian VTS, seperti
vts_treble_sys_prop_test
ditulis dalam Python3. Pengujian
berbasis Python diterapkan sebagai unittest.TestCase dan setiap kasus
pengujian dapat berinteraksi dengan perangkat melalui perintah shell.
Konten dan contoh kode di halaman ini tunduk kepada lisensi yang dijelaskan dalam Lisensi Konten. Java dan OpenJDK adalah merek dagang atau merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2025-07-27 UTC.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Informasi yang saya butuhkan tidak ada","missingTheInformationINeed","thumb-down"],["Terlalu rumit/langkahnya terlalu banyak","tooComplicatedTooManySteps","thumb-down"],["Sudah usang","outOfDate","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Masalah kode / contoh","samplesCodeIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-07-27 UTC."],[],[],null,["# Vendor Test Suite (VTS) and infrastructure\n\nThe Android Vendor Test Suite (VTS) provides\nextensive testing on the following:\n\n- Kernel\n- Hardware abstraction layer (HAL)\n\nVTS runs on a\ndesktop machine and executes test cases directly on attached devices or\non the emulators. Similar to [CTS](/docs/compatibility/cts), VTS is\nan automated test suite that uses the following major software components:\n\n- The VTS [Trade Federation](/docs/core/tests/tradefed) test harness runs on your host machine and manages test execution. It offers the ability to [Configure sharding](/docs/core/tests/tradefed/testing/through-suite/android-test-tuning) across multiple devices under test (DUTs). You can also use the [Suite Retry](/devices/tech/test_infra/tradefed/testing/through-suite/suite-retry) feature to retry only the failures rather than the entire test suites, which greatly reduces the re-run time.\n- Individual test cases are executed on the DUT. The test cases can be GTest-style tests, kernel tests, or JUnit-style tests written in Java.\n\nTypes of tests\n--------------\n\nThe various types of VTS tests are described in the following sections.\n\n### GTest-style tests\n\nMost tests in VTS are GTest-style tests that check the HAL\nimplementation. The test is\nwritten in C++ and runs on the device. A typical VTS GTest iterates through\neach instance of a given interface, and runs all the test cases\nagainst it. Refer to [`VtsHalHealthStorageV1_0TargetTest`](https://cs.android.com/android/platform/superproject/+/android-latest-release:hardware/interfaces/health/storage/1.0/vts/functional/)\nfor an example.\n\n### Linux kernel tests\n\n- Kselftest ([external/linux-kselftest](https://github.com/torvalds/linux/tree/master/tools/testing/selftests/kselftest))\n is a collection of tests included within the Linux kernel repository\n at `tools/testing/selftests`, of which 23 are included in VTS to run on ARM.\n\n- Linux Test Project ([external/ltp](https://cs.android.com/android/platform/superproject/+/android-latest-release:external/ltp/))\n tests validate the reliability, robustness, and stability of the Linux kernel.\n\n### JUnit-style tests\n\nA small set of host-driven tests in VTS are JUnit-style tests, for example,\n[`KernelApiSysfsTest`](https://cs.android.com/android/platform/superproject/+/android-latest-release:test/vts-testcase/kernel/api/sysfs/src/com/android/tests/sysfs/KernelApiSysfsTest.java).\nThe Java tests are implemented as\n[`BaseHostJUnit4Test`](https://cs.android.com/android/platform/superproject/+/android-latest-release:tools/tradefederation/core/test_framework/com/android/tradefed/testtype/junit4/BaseHostJUnit4Test.java),\nwhich is associated with a test device and can run shell\ncommands to perform validation.\n\n### Standalone Python3 tests\n\nSome VTS tests, such as\n[`vts_treble_sys_prop_test`](https://cs.android.com/android/platform/superproject/+/android-latest-release:test/vts-testcase/security/system_property/vts_treble_sys_prop_test.py)\nare written in Python3. The\nPython-based tests are implemented as `unittest.TestCase` and each test\ncase can interact with the device through shell commands.\n| **Caution:** The Python tests aren't recommended due to limited support in the Android tree. We highly recommend writing the VTS tests as GTest, or at least as JUnit-style tests."]]