Esta página contém instruções para usar testes multidisco do CTS Verifier (CTS-V) para Android 16 e versões mais recentes.
Configurar testes multidevice do lado do host
Esta seção explica como configurar testes em vários dispositivos.
- Confirme se seu computador atende aos requisitos de sistema operacional do CTS.
- Siga as etapas 2 e 5 de Instalar software para computador para garantir que o adb, o AAPT2 e o Python estejam instalados corretamente no seu computador.
Prepare dois dispositivos em teste (DUTs) correspondentes, cada um com o CTS-V configurado.
- Para informações sobre como configurar um DUT, consulte Configurar o DUT.
- Para instruções sobre como configurar o CTS-V, consulte Configuração.
Se você estiver testando um módulo diferente do NFC, siga as instruções em Configurar testes padrão com dois dispositivos.
- Para testes de NFC, siga as instruções em Configurar testes de NFC.
Se você estiver testando o módulo CDM, siga as instruções em Configurar testes de CDM, além da configuração padrão de dois dispositivos.
Configurar testes padrão com dois dispositivos
Para a configuração padrão de dois dispositivos:
- Coloque dois DUTs Android correspondentes a cerca de 20 cm de distância.
Para garantir um ambiente limpo, coloque os dois dispositivos em uma caixa de proteção.
(Opcional) Configure um sniffer OTA para depuração de Wi-Fi.
Configurar testes de NFC
Os testes de NFC usam um DUT e um chip NFC PN532.
Para configurar testes de NFC:
- Compre um chip NFC PN532. Recomendamos o All-In-One PN532.
No DUT, navegue até o app Configurações.
Ative a NFC.
Posicione o chip NFC:
Para smartphones, posicione o leitor NFC do DUT conforme mostrado na figura 1:
Figura 1. Posicionamento do chip NFC.
Para outros tipos de dispositivo, posicione o chip perto da antena NFC.
Conecte o chip NFC PN532 à estação de trabalho de teste usando um cabo USB.
Configurar testes de CDM
O caso de teste test_permissions_sync()
tem um comportamento diferente dependendo do
tipo de build dos dispositivos em que o teste é executado. É fundamental que os OEMs testem ambas as versões depuráveis (userdebug ou eng) e não depuráveis (user) e que os testes sejam aprovados para as duas.
Isenção
A cláusula de CDD para a implementação da API de sincronização de permissões exige apenas que ela consiga transferir dados entre dispositivos por um canal seguro. Como a implementação do canal seguro não é um requisito de conformidade do CDD, esse teste pode ser ignorado em builds não depuráveis (do usuário), mas apenas se você quiser desativar o suporte ao recurso de sincronização de permissões do CDM.
Os testes precisam ser aprovados em builds depuráveis sem exceção.
Pré-requisitos para testes em builds não depuráveis
Se você não estiver isento pelas cláusulas de isenção anteriores, verifique se os seguintes pré-requisitos foram atendidos.
O canal seguro usa o AVF (AttestationVerificationFramework
) para verificar a confiabilidade do hardware. As declarações geradas pelas duas partes contêm
várias informações sobre si mesmas para garantir que não houve
alteração não autorizada no sistema. O AVF verifica os seguintes estados
durante o processo de verificação:
- O dispositivo tem acesso à Internet
- O dispositivo usa a inicialização verificada, e o build precisa ser assinado com uma chave de lançamento, não uma chave de desenvolvimento.
- O carregador de inicialização do dispositivo está bloqueado. Para instruções detalhadas, consulte como bloquear o carregador de inicialização.
- Os níveis de patch do SO, da inicialização e do fornecedor de chaves estão dentro de 12 meses. Não use um build com mais de um ano.
O atestado do dispositivo é respaldado por um dos certificados raiz aprovados pelo fornecedor. Especifique seus certificados raiz confiáveis na sobreposição de recursos
vendor_required_attestation_certificates.xml
.
Executar testes multidisco no lado do host (AOSP 16 ou mais recente)
O CTS Verifier 16 apresenta suporte para testes multidisco do lado do host. Esses testes podem ser executados usando scripts automatizados no host, em vez da operação de teste manual no dispositivo. Depois que cada teste é concluído, os resultados são enviados automaticamente para o DUT e exibidos no app CTS Verifier.
Esta seção explica como executar os testes multidisco do lado do host.
Executar testes em vários dispositivos
Para executar um teste em vários dispositivos:
Na estação de trabalho de teste, inicie o console
cts-v-host
no diretório em que o pacote zip do CTS-V foi descompactado:./android-cts-verifier/android-cts-v-host/tools/cts-v-host-tradefed
No app CTS Verifier no DUT, clique em Testes do lado do host. A Figura 2 mostra os testes do lado do host no app CTS Verifier:
Figura 2. Testes multidevice do lado do host no app CTS Verifier.
Uma lista de módulos de teste multidimensional do lado do host de teste será exibida.
Identifique o nome do módulo de teste que você quer executar. Por exemplo, o módulo CompanionDeviceManager é listado como CtsCompanionDeviceManagerMultiDeviceTestCases.
No console cts-v-host, execute o seguinte comando:
run cts-v-host -m test_module_name
Exemplo:
run cts-v-host -m CtsCompanionDeviceManagerMultiDeviceTestCases
Depois que o console xTS terminar de executar os testes, os resultados vão aparecer no app CTS Verifier. Os testes marcados em verde foram aprovados. Os testes marcados em vermelho falharam. A Figura 3 mostra exemplos de resultados para os testes CtsCompanionDeviceManager:
Figura 3. Resultados de testes multidevice do lado do host no app CTS Verifier.
Resolver problemas de testes em vários dispositivos
Nesta seção, você encontra ajuda para resolver possíveis problemas.
Correção de "Nenhuma resposta para GetFirmwareVersion durante testes de NFC"
Se você receber a mensagem verify_firmware_version RuntimeError: No response
for GetFirmwareVersion
ao executar os testes em vários dispositivos, eles não poderão acessar a placa NFC PN532.
Para corrigir esse problema, identifique o caminho serial usado pela placa NFC PN532 no
host, como dev/ttyUSB1
, e especifique-o manualmente usando o argumento
--module-arg
no console:
run cts-v-host -m CtsNfcHceMultiDeviceTestCases --module-arg CtsNfcHceMultiDeviceTestCases:pn532_serial_path:/dev/ttyUSB1
Correção da mensagem de erro "Falha na transação" durante os testes de NFC
Se você receber a mensagem Transaction failed, check device logs for more
information.
para todos os casos de teste de NFC, provavelmente é porque o chip NFC do DUT
não consegue detectar o PN532.
Se você tiver vários dispositivos conectados ao host e alguns deles não tiverem um PN532 colocado em cima, talvez o DUT errado tenha sido selecionado. Para mais informações, consulte Configurar testes de NFC.
Para corrigir esse problema, faça uma das seguintes ações:
Defina o número de série correto do DUT no comando de teste do host usando a flag
-s
.Desconecte todos os dispositivos que não são DUT do host.
O caso de teste test_permissions_sync
do CDM foi ignorado
Se o teste estiver sendo executado em dispositivos não depuráveis, verifique se você está isento. Caso contrário, verifique se os dois dispositivos atendem aos pré-requisitos.