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 , VTS é um conjunto de testes automatizado que usa os seguintes principais componentes de software.

  • O VTS Federação do Comércio de equipamento de teste é executado em sua máquina host e gerencia a execução do teste. Ele oferece a capacidade de configurar Sharding em vários dispositivos sob teste (DUT). Você também pode usar a suíte Retry recurso para repetir única as falhas em vez de todo o conjunto de testes, o que reduz significativamente o tempo de re-run.
  • 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 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. Referem-se a VtsHalHealthStorageV1_0TargetTest para um exemplo.

Testes de kernel Linux

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

  • Projeto de Teste Linux ( externo / LTP ) testes de validar a confiabilidade, robustez e estabilidade do kernel do Linux.

Testes de estilo JUnit

Um pequeno conjunto de testes conduzidos pelo hospedeiro em VTS são testes de estilo JUnit, por exemplo, KernelApiSysfsTest . Os testes de Java são implementados como BaseHostJUnit4Test , que é associado com um dispositivo de teste e pode executar comandos shell para executar 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 através de comandos de concha.