Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Vendor Test Suite (VTS) e infraestructura

El paquete de pruebas de proveedores de Android 11 (VTS) proporciona pruebas exhaustivas sobre lo siguiente:

  • Núcleo
  • Capa de abstracción de hardware (HAL)

VTS se ejecuta en una máquina de escritorio y ejecuta casos de prueba directamente en los dispositivos conectados o en los emuladores. Al igual que en CTS , VTS es un conjunto de pruebas automatizado que utiliza los siguientes componentes principales de software.

  • El VTS Federación de Comercio de instrumento de prueba se ejecuta en el ordenador central y gestiona la ejecución de pruebas. Ofrece la posibilidad de configurar Sharding a través de múltiples dispositivos bajo prueba (DUT). También puede utilizar la suite de reintento función para volver a intentar solamente los fracasos en lugar de todo los bancos de pruebas, lo que reduce considerablemente el tiempo de volver a ejecutar.
  • Los casos de prueba individuales se ejecutan en el dispositivo bajo prueba. Los casos de prueba pueden ser pruebas de estilo gtest, pruebas de kernel o pruebas de estilo JUnit escritas en Java.

Tipos de pruebas

pruebas de estilo gtest

La mayoría de las pruebas en VTS son pruebas de estilo gtest que verifican la implementación de HAL. La prueba está escrita en C ++ y se ejecuta en el dispositivo. Un gtest típico de VTS itera a través de cada instancia de una interfaz dada y ejecuta todos los casos de prueba en su contra. Consulte VtsHalHealthStorageV1_0TargetTest para un ejemplo.

Pruebas del kernel de Linux

  • Kselftest ( externa / linux-kselftest ) es un conjunto de pruebas incluidas en el repositorio de Linux kernel en tools/testing/selftests , de las cuales 23 están incluidos en VTS para funcionar en ARM.

  • Linux Test Project ( externa / LTP ) Pruebas de validar la fiabilidad, robustez y estabilidad del núcleo de Linux.

Pruebas de estilo JUnit

Un pequeño conjunto de pruebas anfitrionas impulsada en VTS son pruebas de estilo JUnit, por ejemplo, KernelApiSysfsTest . Las pruebas de Java se implementan como BaseHostJUnit4Test , que es asociado con un dispositivo de prueba y se puede ejecutar comandos shell para realizar la validación.

Pruebas independientes de Python3

Algunas pruebas STM, como vts_treble_sys_prop_test están escritos en python3. Las pruebas basadas en Python se implementan como unittest.TestCase y cada caso de prueba pueden interactuar con el dispositivo a través de comandos shell.