Trade Federation è un framework di test continuo per l'esecuzione di test sui dispositivi Android. Per eseguire la suite di test di compatibilità (CTS), leggi prima la panoramica di Trade Federation per una spiegazione del framework di test Tradefed.
Per eseguire un piano di test:
- Configura i dispositivi in test (DUT) come descritto nella sezione Configurazione del dispositivo Android.
- Assicurati di aver installato le versioni recenti di Android Debug Bridge (adb) e Android Asset Packaging Tool (AAPT) e di aver aggiunto la posizione di questi strumenti al percorso di sistema del computer. Per informazioni sull'installazione di questi strumenti, consulta Configurazione di CTS: ADB e AAPT.
- Scarica le build CTS rilasciate sulla macchina host Linux e decomprimi la build nella posizione host.
- Collega almeno un dispositivo. Per preparare il DUT:
- Premi il tasto Home per impostare il dispositivo sulla schermata Home.
- Non utilizzare il DUT per altre attività.
- Tieni il DUT in posizione stazionaria per evitare di attivare l'attività del sensore.
- Inquadra con la fotocamera del dispositivo un oggetto che può essere messo a fuoco.
- Non premere alcun tasto sul dispositivo mentre il CTS è in esecuzione. La pressione dei tasti o il tocco dello schermo di un DUT interferisce con i test in esecuzione e può determinare errori dei test.
Avvia lo script cts-tradefed della console CTS dalla cartella in cui è stato decompresso il pacchetto CTS. Nella shell della riga di comando dell'host, esegui:
./android-cts/tools/cts-tradefed
Esegui il piano di test predefinito (contiene tutti i pacchetti di test):
cts-tradefed > run cts
Se vuoi migliorare il tempo di esecuzione dei test, puoi suddividere i test su più dispositivi. Lo sharding richiede all'host di connettere almeno due dispositivi, ma per efficienza sono consigliati sei o più dispositivi. Quando esegui lo sharding di più di un dispositivo:
Per Android 9 e versioni successive, utilizza l'opzione del comando
--shard-count number_of_shards
Per Android 8.1 e versioni precedenti, utilizza l'opzione di comando
--shards number_of_shards
Se non vuoi eseguire l'intera suite di test, puoi eseguire il piano CTS che preferisci dalla riga di comando:
run cts --plan test_plan_name
Per trovare il nome del piano di test:
Per Android 7.0 e versioni successive, per visualizzare un elenco di moduli di test, inserisci
list modules
Per Android 6.0 e versioni precedenti, per visualizzare un elenco di piani di test nel repository, inserisci
list plans
Per Android 6.0 e versioni precedenti, per visualizzare un elenco dei pacchetti di test nel repository, inserisci
list packages
Per ulteriori opzioni di comando a seconda delle versioni CTS, consulta il riferimento ai comandi della console o la sezione "help all" nella console Tradefed.
Esegui più sessioni di nuovo tentativo finché non sono stati completati tutti i moduli di test e i numeri di errori di test sono gli stessi nelle ultime due sessioni di nuovo tentativo.
Per Android 9 e versioni successive, utilizza
run retry --retry session_number --shard-count number_of_shards
Per Android 7.0-8.1, utilizza
run cts --retry session_number --shards number_of_shards
Per ulteriori opzioni del comando Riprova in base alla versione di CTS, consulta la pagina relativa alla console dei comandi di CTS v2.
Per comprendere i dettagli di implementazione del nuovo tentativo CTS, consulta Nuovo tentativo di Trade Federation Suite.
Esegui una sessione di ripetizione solo per i test con parametri non riusciti. I test con parametri superati non vengono ritentati.
Per Android 11 e versioni successive, la seguente opzione di comando di ripetizione è attivata per impostazione predefinita nel comando
run cts
:run retry --retry
--new-parameterized-handling
Visualizza l'avanzamento e i risultati del test riportati sulla console.
Esegui CTS utilizzando Android Test Station
Android Test Station è uno strumento di automazione dei test che gli sviluppatori e i tecnici di test di Android possono utilizzare per impiegare un'interfaccia utente per l'esecuzione di suite di test standard. Funziona con la suite di test di compatibilità Android (CTS).
Lo strumento è disponibile pubblicamente tramite la guida utente di ATS e il codice è open source in AOSP (multitest_transport
, tradefed_cluster
).
Esegui CTS per le modalità alternative
La release CTS 10 R4 aggiunge un piano di test per i dispositivi con modalità alternative o per i dispositivi con più di uno schermo. Esegui il piano di test delle modalità alternative utilizzando
run cts-foldable
.
I casi di test superati o non superati per la modalità schermo alternativa vengono aggiunti con il valore di display_mode
, ad esempio testcase1[display_mode=0]
.
In CTS 13, l'API DeviceStateManager consente di eseguire i moduli di test con la seguente
opzione di configurazione in diversi stati del dispositivo di un dispositivo pieghevole.
L'esecuzione dei test è automatica in CTS in base agli stati di chiusura del display
definiti nel dispositivo senza dover eseguire il piano di test cts-foldable
.
<option name="config-descriptor:metadata" key="parameter" value="all_foldable_states" />
Test multi-dispositivo in CTS
Android 13 e versioni successive supportano i test su più dispositivi.
I test che richiedono più dispositivi vengono eseguiti automaticamente durante l'esecuzione del CTS.
CTS 13 include alcuni test multi-dispositivo che si attivano automaticamente quando viene utilizzato lo sharding. Sebbene i test non richiedano modifiche aggiuntive alla configurazione fisica,virtualenv
deve essere installato per consentirne l'esecuzione corretta. Per maggiori dettagli, consulta la sezione Suite per più dispositivi.
Eseguire test multi-dispositivo
Per eseguire i test multi-dispositivo in modo indipendente, utilizza il seguente codice:
cts-tradefed > run cts-multidevice
Sono supportate tutte le opzioni standard. Per scegliere come target dispositivi specifici, aggiungi--serial <serial1> --serial <serial2>
e così via per il numero di dispositivi scelto come target.
Per attivare automaticamente i test su più dispositivi, utilizza lo sharding, come in --shard-count 2
.