CATBox (Complete Automotive Tests in a Box) è un pacchetto open source che fornisce i framework e gli strumenti necessari per ottimizzare ed eseguire il settore automobilistico i test con una configurazione minima. CATBox è scalabile e compatibile gli strumenti, l'infrastruttura e i test che usi per testare e convalidare il tuo Implementazioni di Automotive OS (AAOS). Di conseguenza, puoi fornire video di alta qualità sul mercato.
Progettazione e implementazione di CATBox
La suite di test CATBox fornisce gli strumenti, i framework e i test necessari Eseguire test funzionali e di prestazioni su un dispositivo target nel settore auto e motori; durante l'utilizzo di un dispositivo associato.
L'immagine seguente illustra un design di alto livello di un pacchetto CATBox.
Figura 1. Pacchetto CATBox
Trattato
Tradefed è un framework di test continuo open source utilizzato per eseguire test su Dispositivi Android Per maggiori dettagli, vedi Trade Federation (Panoramica della Federazione commerciale).
Framework per i test nel settore auto e motori
CATBox si basa su un framework di test Automotive chiamato Spectatio, che fornisce API per i test di varie app per auto e motori. Si basa su di UI Automator, un framework di test open source che fornisce una serie di API per creare test dell'interfaccia utente che interagiscono con le applicazioni dell'utente e del sistema.
Download della suite di test CATBox
Android 14
Android Automotive 14 è la release di il traguardo di sviluppo, detto in codice U. Usa i seguenti link per scaricare Suite di test CATBox per Android 14:
Android 12
Android 12 rappresenta il traguardo di sviluppo nome in codice S. Utilizza i seguenti link per scaricare le suite di test CATBox Android 12:
Android 11
Android 11 rappresenta la release del traguardo di sviluppo, chiamato in codice R. Utilizza la i seguenti link per scaricare le suite di test CATBox per Android 11:
Creazione CATBox
Utilizza il comando build catbox
una volta che il codice AOSP di Android è disponibile nella
workstation locale.
Per creare il pacchetto CATBox in locale:
Seleziona il targeting per dispositivo in base all'architettura del dispositivo ed esegui seguente comando:
lunch <target>
Per creare una CATBox, esegui questo comando:
make catbox
Questo comando crea il file
android-catbox.zip
nel directory/out/host/linux-x86/catbox
, che può essere utilizzata per eseguire test.
Configurare l'ambiente
La configurazione dell'ambiente richiesta per eseguire i test CATBox è simile a: Configurazione di CTS. Per configurare il completa le seguenti attività:
Installa ADB e AAPT.
Installa JDK. Consulta Java Development Kit per Ubuntu.
Aumenta il limite di memoria. Consulta Requisiti per lo spazio di archiviazione.
configura ed esegui CATBox
Utilizzare il framework di test Tradefed per eseguire i test sui dispositivi Android. Prima di per configurare CATBox, consulta la Panoramica sulla Federazione di scambio.
Per configurare ed eseguire CATBox, consulta le sezioni seguenti.
Configura il dispositivo
Prima di eseguire un piano di test, completa i seguenti passaggi per configurare il dispositivo:
Assicurati di aver installato le versioni recenti di entrambi Android Debug Bridge (adb) e ai Strumento per la creazione di pacchetti di asset Android (AAPT) nonché aggiunta la posizione di questi strumenti al percorso di sistema in una macchina virtuale. Per maggiori dettagli, vedi ADB e AAPT.
Collega almeno un dispositivo e prepara il dispositivo in fase di test (DUT) come che segue:
Per ripristinare i dati di fabbrica del dispositivo automobilistico, vai a Impostazioni > Sistema > Opzioni di reimpostazione > Resetta tutti i dati.
Attendi che il dispositivo si riavvii automaticamente.
Assicurati che ADB sia attivato. Per verificare che il dispositivo sia disponibile, esegui il comando seguente comando:
adb devices
Per abilitare root, esegui questo comando:
adb -s DEVICE_SERIAL root
Sostituisci
DEVICE_SERIAL
con l'ID seriale del dispositivo automobilistico.Connettiti alla rete Wi-Fi.
Estrai il pacchetto CATBox
Dopo aver configurato il dispositivo, decomprimi il pacchetto CATBox e vai alla estratta:
unzip android-catbox.zip
cd android-catbox
Esegui test in CATBox
Per eseguire CATBox con i piani di test nel pacchetto CATBox:
./tools/catbox-tradefed run commandAndExit TEST_PLAN_NAME --serial DEVICE_SERIAL
Sostituisci DEVICE_SERIAL
con l'ID seriale del
dispositivo automobilistico. Se hai più dispositivi connessi alla macchina host,
usa DEVICE_SERIAL
per distinguerli. Sostituisci
TEST_PLAN_NAME
con il nome del piano di test che preferisci
eseguire.
Per ottenere l'elenco più completo dei piani disponibili, utilizza la riga di comando:
./tools/catbox-tradefed list plans | grep -i catbox
Tipi di piani di test
La seguente tabella mostra i piani di test funzionali disponibili.
Piani di test funzionali | Descrizione |
---|---|
catbox-functional |
Test funzionali. |
catbox-functional-app-info-setting |
Informazioni sulle app che impostano i test funzionali. |
catbox-functional-admin-user-grant-permissions |
Test funzionali delle autorizzazioni concesse all'utente amministratore. |
catbox-functional-app-info-setting-ui-elements |
Informazioni sulle app che impostano i test funzionali. |
catbox-functional-appgrid |
Test funzionali della griglia di app. |
catbox-functional-base |
Elenco dei test funzionali. |
catbox-functional-bluetooth-audio |
Test di funzionalità audio Bluetooth. |
catbox-functional-bluetooth-palette |
Test funzionali della barra di stato. |
catbox-functional-bluetooth-tests |
La funzionalità Bluetooth esegue il test con Mobly. |
catbox-functional-brightness-palette |
Test funzionali della barra di stato. |
catbox-functional-btmoped |
Test funzionali basati su ciclomotori Bluetooth. |
catbox-functional-date-time-setting |
Data e ora per l'impostazione dei test funzionali. |
catbox-functional-dial |
Componi i test funzionali. |
catbox-functional-display-setting |
Test funzionali per l'impostazione del display. |
catbox-functional-driving-optimized-apps |
Test funzionali delle restrizioni UX. |
catbox-functional-enable-developers-option |
Abilita i test funzionali delle opzioni degli sviluppatori. |
catbox-functional-home |
Test di funzionalità della casa. |
catbox-functional-lock-screen |
Test del funzionamento della schermata di blocco. |
catbox-functional-mediacenter |
Test funzionali di Media Center. |
catbox-functional-microphone-recent-apps |
Test funzionali per l'impostazione del microfono. |
catbox-functional-microphone-setting |
Test funzionali per l'impostazione del microfono. |
catbox-functional-multiuser |
Test funzionali di più utenti. |
catbox-functional-multiuser-system-user |
Test funzionali di più utenti. |
catbox-functional-navigation-bar |
Test della funzionalità della barra di navigazione. |
catbox-functional-network-palette |
Test funzionali della barra di stato. |
catbox-functional-network-setting |
Test funzionali dell'impostazione della rete. |
catbox-functional-notification |
Test funzionali delle notifiche. |
catbox-functional-privacy-permission-manager |
Test funzionali per l'impostazione delle autorizzazioni delle app per la privacy. |
catbox-functional-privacy-setting |
Test funzionali per l'impostazione del microfono. |
catbox-functional-privacy-setting-ui-elements |
Test funzionali per le impostazioni della privacy. |
catbox-functional-profile-icon |
Test funzionali della barra dell'icona del profilo. |
catbox-functional-profiles-icon-list |
Test dell'elenco delle icone dei profili. |
catbox-functional-security-setting |
Test funzionali per le impostazioni di sicurezza. |
catbox-functional-setting |
Impostazione dei test funzionali. |
catbox-functional-settings-location |
Configurazione dei test della posizione in corso... |
catbox-functional-sound-setting |
Test funzionali per l'impostazione del suono. |
catbox-functional-status-bar |
Test funzionali della barra di stato. |
catbox-functional-storage-setting |
Test funzionali per l'impostazione dello spazio di archiviazione. |
catbox-functional-system-setting |
Test funzionali per le impostazioni del sistema. |
catbox-functional-systemui |
Test dell'interfaccia utente di sistema. |
catbox-functional-ux-restriction |
Test funzionali delle restrizioni UX. |
catbox-functional-ux-restriction-facet-bar |
Test funzionali delle restrizioni UX. |
La seguente tabella elenca i piani di test sul rendimento di CATBox.
Piani di test del rendimento | Descrizione |
---|---|
catbox-performance-cold-app-start-up-dialer |
Test delle prestazioni dell'avvio a freddo dell'app Telefono e Telefono. |
catbox-performance-cold-app-start-up-mediacenter |
Test delle prestazioni all'avvio a freddo dell'app per Media Center. |
catbox-performance-cold-app-start-up-settings |
Test delle prestazioni all'avvio a freddo dell'app per le impostazioni. |
catbox-performance-create-and-switch-to-new-guest |
Misura la latenza per passare a un nuovo ospite. |
catbox-performance-create-and-switch-to-new-user |
Misura la latenza per passare a un nuovo utente non amministratore. |
catbox-performance-hot-app-start-up-dialer |
Test delle prestazioni all'avvio dell'app a caldo per Telefono e Telefono. |
catbox-performance-hot-app-start-up-mediacenter |
Test delle prestazioni all'avvio dell'app a caldo per Media Center. |
catbox-performance-hot-app-start-up-settings |
Test delle prestazioni all'avvio dell'app a caldo per Impostazioni. |
catbox-performance-jank-appgrid |
Test delle prestazioni per Appgrid. |
catbox-performance-jank-contact-list |
Test delle prestazioni per Contatti. |
catbox-performance-jank-media |
Test del rendimento per i media. |
catbox-performance-jank-media-switch-playback |
Test delle prestazioni per la riproduzione dei sensori multimediali. |
catbox-performance-jank-notifications |
Test delle prestazioni per le notifiche. |
catbox-performance-jank-settings |
Test delle prestazioni per Impostazioni. |
catbox-performance-switch-to-existing-user |
Misura la latenza per passare a un utente esistente. |
Esegui il test lato host multidispositivo
L'esecuzione dei test lato host multidispositivo utilizza CATBox per eseguire il test
in una sessione. Ad esempio, BTDiscoveryTest
:
make catbox
./tools/catbox-tradefed run commandAndExit catbox-functional-bluetooth-tests --{phone}serial <serial> --{auto}serial <serial> --mobly-host:mobly-par-file-name BTDiscoveryTest
CATBox installa l'apk
, quindi il test viene eseguito nel file Python corretto
dell'ambiente di esecuzione.
Esamina i risultati del test CATBox
I risultati delle esecuzioni dei test funzionali e di prestazioni vengono salvati in
android-catbox/results/latest
.
Tipo di risultato | Posizione |
---|---|
Risultati del test | test_result.xml |
Dettagli dei test di errore | test_result_failures_suite.html |
Risultati delle metriche sul rendimento | /report-log-files/CatboxPerformanceTests.reportlog.json |
Esecuzioni di test funzionali e delle prestazioni | /android-catbox/logs/latest |