O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Vendor Test Suite (VTS) e infraestrutura

O Android 11 Vendor Test Suite (VTS) oferece testes extensivos sobre o seguinte:

  • Núcleo
  • Camada de abstração de hardware (HAL)

O VTS é executado em uma máquina desktop e executa casos de teste diretamente nos dispositivos conectados ou nos emuladores. Semelhante ao CTS , o VTS é um conjunto de testes automatizado que usa os seguintes componentes de software principais.

  • O equipamento de teste da VTS Trade Federation é executado em sua máquina host e gerencia a execução do teste. Ele oferece a capacidade de configurar a fragmentação em vários dispositivos em teste (DUTs). Você também pode usar o recurso Suite Retry para tentar novamente apenas as falhas, em vez de todas as suítes de teste, o que reduz bastante o tempo de nova execução.
  • Casos de teste individuais são executados no DUT. Os casos de teste podem ser testes do estilo gtest, testes de kernel ou testes do estilo JUnit escritos em Java.

Tipos de testes

testes de estilo gtest

A maioria dos testes em VTS são testes do estilo gtest que verificam a implementação HAL. O teste é escrito em C ++ e executado no dispositivo. Um gtest VTS típico itera por meio de cada instância de uma determinada interface e executa todos os casos de teste nela. Consulte VtsHalHealthStorageV1_0TargetTest para obter um exemplo.

Testes de kernel Linux

  • Kselftest ( external / linux-kselftest ) é uma coleção de testes incluídos no repositório do kernel Linux em tools/testing/selftests , dos quais 23 estão incluídos no VTS para rodar em ARM.

  • Os testes do Linux Test Project ( externo / ltp ) validam a confiabilidade, robustez e estabilidade do kernel Linux.

Testes de estilo JUnit

Um pequeno conjunto de testes orientados por host em VTS são testes do estilo JUnit, por exemplo, KernelApiSysfsTest . Os testes Java são implementados como BaseHostJUnit4Test , que é associado a um dispositivo de teste e pode executar comandos shell para realizar a validação.

Testes Python3 autônomos

Alguns testes VTS, como vts_treble_sys_prop_test são escritos em Python3. Os testes baseados em Python são implementados como unittest.TestCase e cada caso de teste pode interagir com o dispositivo por meio de comandos shell.