Google is committed to advancing racial equity for Black communities. See how.
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Vendor Test Suite (VTS) e infrastruttura

Android 11 Vendor Test Suite (VTS) fornisce test approfonditi su quanto segue:

  • Kernel
  • Livello di astrazione hardware (HAL)

VTS viene eseguito su una macchina desktop ed esegue casi di test direttamente sui dispositivi collegati o sugli emulatori. Simile a CTS , VTS è una suite di test automatizzata che utilizza i seguenti principali componenti software.

  • Il test harness di VTS Trade Federation viene eseguito sulla macchina host e gestisce l'esecuzione dei test. Offre la possibilità di configurare la condivisione su più dispositivi sotto test (DUT). È inoltre possibile utilizzare la funzionalità Suite Retry per riprovare solo gli errori anziché l'intera suite di test, riducendo notevolmente il tempo di riesecuzione.
  • I singoli casi di test vengono eseguiti sul DUT. I casi di test possono essere test in stile gtest, test del kernel o test in stile JUnit scritti in Java.

Tipi di test

test in stile gtest

La maggior parte dei test in VTS sono test in stile gtest che controllano l'implementazione di HAL. Il test è scritto in C ++ e viene eseguito sul dispositivo. Un tipico gtest VTS itera attraverso ogni istanza di una data interfaccia ed esegue tutti i casi di test su di essa. Fare riferimento a VtsHalHealthStorageV1_0TargetTest per un esempio.

Test del kernel Linux

  • Kselftest ( external / linux-kselftest ) è una raccolta di test inclusi nel repository del kernel Linux in tools/testing/selftests , di cui 23 sono inclusi in VTS per essere eseguiti su ARM.

  • I test di Linux Test Project ( esterni / ltp ) convalidano l'affidabilità, la robustezza e la stabilità del kernel Linux.

Test in stile JUnit

Una piccola serie di test gestiti dall'host in VTS sono test in stile JUnit, ad esempio KernelApiSysfsTest . I test Java sono implementati come BaseHostJUnit4Test , che è associato a un dispositivo di test e può eseguire comandi della shell per eseguire la convalida.

Test Python3 autonomi

Alcuni test VTS, come vts_treble_sys_prop_test sono scritti in Python3. I test basati su Python sono implementati come unittest.TestCase e ogni test case può interagire con il dispositivo tramite comandi di shell.