Google si impegna a promuovere l'equità razziale per le comunità nere. Vedi come.
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Test della piattaforma Android

Questo contenuto è rivolto agli sviluppatori di piattaforme Android. Prima di capire come vengono eseguiti i test sulla piattaforma Android, fare riferimento all'architettura della piattaforma Android per una panoramica.

Quindi approfondisci le precise tecnologie disponibili in questa sezione, come Vendor Test Suite (VTS) e i suoi innumerevoli tutorial video e codelab .

Nota anche i meccanismi di test specifici per la sicurezza disponibili per rilevare e rafforzare i tuoi dispositivi contro le vulnerabilità.

Per i test delle app, inizia con i Fondamenti dei test e conduci il Codelab dei test Android utilizzando gli esempi forniti.

Infine, tieni presente che i test di base per l'invio sono disponibili tramite Repo Hooks che possono eseguire linters, controllare la formattazione e attivare i test delle unità prima di procedere, come il caricamento di un commit. Nota che questi hook sono disabilitati di default. Vedere l'introduzione di Ganci Repo per maggiori dettagli.

Cosa e come testare

Un test della piattaforma in genere interagisce con uno o più dei servizi di sistema Android o con i livelli HAL (Hardware Abstraction Layer), esercita le funzionalità del soggetto in esame e afferma la correttezza dell'esito del test.

Pertanto, un test della piattaforma può:

  1. esercitare le API del framework tramite il framework delle applicazioni; le API specifiche esercitate possono includere:
    • API pubbliche destinate ad applicazioni di terze parti
    • API nascoste destinate ad applicazioni privilegiate, in particolare API di sistema
    • API private (@hide, o protetto, pacchetto privato)
  2. invocare direttamente i servizi di sistema Android tramite proxy raw binder / IPC
  3. interagire direttamente con gli HAL tramite API di basso livello o interfacce IPC

I tipi 1 e 2 sono tipicamente scritti come test di strumentazione , mentre il tipo 3 è generalmente scritto come test nativo usando il framework gtest .

Per saperne di più, consulta i nostri esempi end-to-end:

Acquisisci familiarità con questi strumenti, poiché sono intrinseci ai test su Android.

Suite di test di compatibilità (CTS)

Android Compatibility Test Suite è una suite di vari tipi di test, utilizzata per garantire la compatibilità delle implementazioni del framework Android tra i partner OEM e tra le versioni della piattaforma. La suite include anche test di strumentazione e test nativi (usando anche il framework gtest).

I test CTS e della piattaforma non si escludono a vicenda, e qui ci sono alcune linee guida generali:

  • se un test sta affermando la correttezza delle funzioni / comportamenti dell'API del framework e deve essere applicato ai partner OEM, dovrebbe essere in CTS
  • se un test ha lo scopo di rilevare le regressioni durante il ciclo di sviluppo della piattaforma e può richiedere l'autorizzazione privilegiata da eseguire e può dipendere dai dettagli di implementazione (come rilasciato in AOSP), dovrebbe essere solo test della piattaforma

Vendor Test Suite (VTS)

Vendor Test Suite (VTS) automatizza i test del kernel HAL e OS. Per utilizzare VTS per testare un'implementazione del sistema nativo Android, impostare un ambiente di test, quindi testare una patch utilizzando un piano VTS.

Infrastruttura di test della Federazione commerciale

Trade Federation (tradotta o TF in breve) è un framework di test continuo progettato per l'esecuzione di test su dispositivi Android. TF può eseguire test funzionali a livello locale, alla scrivania, all'interno del checkout della piattaforma. Esistono due file richiesti per eseguire un test in TF, un'origine test java e una configurazione XML. Vedere RebootTest.java e reboot.xml per esempi.

Debug

La sezione Debug riepiloga strumenti utili e comandi correlati per il debug, la traccia e la profilazione del codice della piattaforma Android nativa durante lo sviluppo di funzionalità a livello di piattaforma.