Android Compatibility Test Suite Verifier (CTS Verifier) integra la Compatibility Test Suite (CTS). Mentre CTS controlla le API e le funzioni che possono essere automatizzate, CTS Verifier fornisce test per le API e le funzioni che non possono essere testate su un dispositivo fisso senza input o posizionamento manuale, come qualità audio, touchscreen, accelerometro e fotocamera.
Requisiti
Prima di eseguire CTS Verifier, assicurati di disporre della seguente attrezzatura:
- Dispositivo Android che ha verificato la compatibilità con l'API Android superando il CTS. Questo è il dispositivo in test (DUT).
- Computer Linux con porta compatibile con USB 2.0. Tutte le connessioni al DUT passano attraverso questa porta.
- Secondo dispositivo Android con implementazione di Bluetooth, Wi-Fi Direct, Wi-Fi Awareness, UWB (se il DUT supporta UWB) e NFC Host Card Emulation (HCE) compatibili noti.
- Un router Wi-Fi configurato con il nome e la password del punto di accesso. Il router dovrebbe avere la possibilità di disconnettersi da internet, ma non essere spento.
Assicurati di preparare anche i treppiedi, i supporti dei dispositivi e le distanze pre-misurate necessarie per i test di misurazione della distanza (vicinanza) per UWB, Wi-Fi NAN e RSSI Bluetooth. Per maggiori dettagli, consulta la sezione Calibrazione della presenza.
Requisiti UICC per i test NFC
CTS Verifier dispone dei seguenti scenari di test NFC:
- Field-off (utilizza i dati transazionali da 0x54)
- Deseleziona (utilizza i dati transazionali da 0x52)
- Comando HCI (0025000000) (utilizza i dati della transazione da 0x02)
I test degli eventi di transazione richiedono due dispositivi, uno dei quali deve avere un UICC SecureElement con le seguenti regole di accesso:
- Hash dell'APK CtsVerifier: 61:ED:37:7E:85:D3:86:A8:DF:EE:6B:86:4B:D8:5B:0B:FA:A5:AF:81
- Identificatore dell'applicazione autorizzata (AID) per l'accesso agli eventi NFC: 0xA000000476416E64726F696443545341
Sul lato dell'emulatore, ci aspettiamo che l'evento di transazione invii l'attività corrispondente in primo piano.
Configura
Modifica la modalità di navigazione di sistema del dispositivo di test in modalità con tre pulsanti come segue:
- quindi apri Impostazioni.
- Vai a Sistema > Gesto > Navigazione del sistema.
- Seleziona una modalità di navigazione basata su pulsanti, preferibilmente la modalità con tre pulsanti, se disponibile.
Per configurare l'ambiente di test di CTS Verifier:
Sul computer Linux:
Esegui questo comando prima di installare lo strumento di verifica CTS per consentire l'accesso alle interfacce non SDK.
adb shell settings put global hidden_api_policy 1
Installa Android Studio.
Scarica l'APK CTS Verifier per la versione di Android da testare.
Collega il DUT al computer Linux.
Da un terminale sul computer Linux, installa
CtsVerifier.apk
sul DUT.adb install -r -g CtsVerifier.apk
Per Android 10 e versioni successive, esegui il seguente comando per concedere all'app l'autorizzazione a creare il report.
adb shell appops set com.android.cts.verifier android:read_device_identifiers allow
Per Android 11 e versioni successive, esegui il seguente comando per consentire il salvataggio dei report in una directory autodefinita all'interno della directory di primo livello esterna del dispositivo.
adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0
Per Android 13 e versioni successive, esegui il seguente comando per consentire l'accesso all'API di test per CTS Verifier.
adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifier
Per Android 14 e versioni successive, esegui il seguente comando per concedere all'app l'autorizzazione per accendere lo schermo.
adb shell appops set com.android.cts.verifier TURN_SCREEN_ON 0
Assicurati che la data e l'ora di sistema siano impostate correttamente sul DUT.
Esegui lo strumento di verifica CTS
Avvia l'applicazione CTS Verifier toccando l'icona CTS Verifier sul DUT.
Figura 1. Icona di CTS Verifier
L'app mostra diversi set di test disponibili per la verifica manuale.
Figura 2. Menu dei test di CTS Verifier
Ogni test contiene un insieme di elementi comuni nella parte inferiore dello schermo.
Figura 3. Schermata di test con gli elementi di test comuni evidenziati
- Superato (✓). Tocca se il compito è conforme ai requisiti del test in base alle istruzioni informazioni.
- Informazioni (?). Tocca per visualizzare le istruzioni del test. Viene visualizzata automaticamente anche la prima volta che viene aperto un test.
- Non superato (!). Tocca se il DUT non soddisfa i requisiti di test come indicato nelle istruzioni informative.
Alcuni test, come la modalità accessorio USB e il test di calibrazione della fotocamera, richiedono una configurazione e istruzioni di test aggiuntive, come descritto nelle sezioni seguenti.
Testare la modalità accessorio USB per 8.0 e versioni successive
Figura 4. Procedura di test dell'accessorio USB per Android 8.0 e versioni successive
Figura 5. Test della modalità accessorio USB per Android 8.0 e versioni successive
Testare la modalità di accessorio USB per 7.x e versioni precedenti
Il test dell'accessorio USB richiede un computer Linux per eseguire il programma della macchina desktop USB (host).
- Collega il DUT al computer Linux.
Sul computer, esegui il programma
cts-usb-accessory
dal pacchetto CTS Verificatore:./cts-usb-accessory
Attendi la visualizzazione di un messaggio popup sul DUT, quindi seleziona OK.
Figura 6. Test dell'accessorio USB
Vai al test dell'accessorio USB nell'applicazione CTS Verifier sul DUT.
Sul computer, controlla l'output della console. Output di esempio:
CTS USB Accessory Tester Found possible Android device (413c:2106) - attempting to switch to accessory mode... Failed to read protocol versionfigure3 Found Android device in accessory mode (18d1:2d01)... [RECV] Message from Android device #0 [SENT] Message from Android accessory #0 [RECV] Message from Android device #1 [SENT] Message from Android accessory #1 [RECV] Message from Android device #2 [SENT] Message from Android accessory #2 [RECV] Message from Android device #3 [SENT] Message from Android accessory #3 [RECV] Message from Android device #4 [SENT] Message from Android accessory #4 [RECV] Message from Android device #5 [SENT] Message from Android accessory #5 [RECV] Message from Android device #6 [SENT] Message from Android accessory #6 [RECV] Message from Android device #7 [SENT] Message from Android accessory #7 [RECV] Message from Android device #8 [SENT] Message from Android accessory #8 [RECV] Message from Android device #9 [SENT] Message from Android accessory #9 [RECV] Message from Android device #10 [SENT] Message from Android accessory #10
Calibra il campo visivo della videocamera
Utilizza la procedura di calibrazione del campo visivo per determinare rapidamente il campo visivo del dispositivo con una precisione moderata.
Configura l'ambiente di test:
- Stampa il file di destinazione calibration-pattern.pdf su carta in formato 28 x 35 cm o A3.
- Monta il motivo stampato su un supporto rigido.
Orienta il dispositivo con la fotocamera e il bersaglio stampato come mostrato nel seguente diagramma.
Figura 7. Obiettivo videocamera stampato
Imposta la larghezza target:
- Misura la distanza (in centimetri) tra le linee continue sul pattern di destinazione per tenere conto delle imprecisioni di stampa (~38 cm).
- Avvia l'applicazione di calibrazione.
- Premi il pulsante di configurazione e seleziona Distanza indicatore.
- Misura e inserisci la distanza dal pattern target (circa 100 cm).
- Premi il pulsante Indietro per tornare all'anteprima della calibrazione.
Verifica che il dispositivo e il bersaglio siano posizionati come mostrato nella figura e che le distanze corrette siano state inserite nella finestra di dialogo di configurazione. L'anteprima mostra l'immagine con una linea verticale sovrapposta. Questa linea deve essere allineata alla linea di mezzeria del pattern target. La griglia trasparente può essere utilizzata con le altre linee verticali per assicurarsi che l'asse ottico sia ortogonale al bersaglio.
Esegui il test di calibrazione:
- Seleziona una risoluzione dell'immagine (utilizzando il selettore in basso a sinistra), quindi tocca lo schermo per scattare una foto. Il test entra in modalità di calibrazione e visualizza la foto con due linee verticali sovrapposte all'immagine.
- Determina l'accuratezza:
- Se le linee sono allineate alle linee verticali del pattern di destinazione entro pochi centimetri, il campo visivo registrato per la risoluzione selezionata è preciso.
- Se le linee non sono allineate, il campo visivo registrato non è preciso. Per correggere il problema, regola il cursore nella parte inferiore dello schermo fino a quando l'overlay non è il più possibile allineato al pattern target. Quando l'overlay e l'immagine del pattern di destinazione sono allineati, il campo visivo visualizzato è un'approssimazione molto simile al valore corretto. Il campo visivo registrato deve essere compreso tra +/-2 gradi rispetto al valore di calibrazione.
- Premi il tasto Indietro e ripeti il test di calibrazione per tutte le risoluzioni delle immagini supportate dal DUT.
Esegui CTS Verifier per alternare le modalità
A partire dalle release CTS 10 R6 e CTS 11 R2, CTS Verifier supporta i test richiesti per i dispositivi con modalità alternative o con più modalità schermo.
Nella parte superiore della visualizzazione elenco principale in CTS Verifier è visualizzato un pulsante che consente agli utenti di passare dalla modalità di visualizzazione aperta a quella chiusa e viceversa. CTS Verifier mostrerà i test necessari per la modalità di visualizzazione selezionata. Per eseguire le modalità alternative in CTS Verifier, è necessario impostare il pulsante sulla modalità di visualizzazione appropriata ed eseguire l'elenco dei test visualizzati.
I risultati dei test combinati verranno registrati nello stesso report con i test non combinati. Per identificare ogni risultato del test da cui proviene il set di test, viene aggiunto un suffisso a ogni nome del test in modalità compressa.
<Test result="fail" name="com.android.cts.verifier.deskclock.DeskClockTestsActivity[folded]">
<RunHistory subtest="CREATE_ALARM[folded]">
<Run start="1594176663973" end="1594176665841" isAutomated="false" />
</RunHistory>
</Test>
Esportare i risultati
Al termine di tutti i test, puoi salvare i risultati come report e scaricarli su un computer. I nomi dei report presentano un timestamp automatico in base all'ora del sistema DUT.
Per salvare i risultati del test, tocca l'icona Salva (disco) nella parte superiore dell'elenco delle categorie del test.
Attendi il messaggio popup che mostra il percorso del file per il report salvato (ad esempio,
/sdcard/verifierReports/ctsVerifierReport-date-time.zip
), quindi registra il percorso.Collega il DUT al computer Linux.
Dopo l'installazione dell'SDK Android sul computer Linux, scarica i report dal dispositivo connesso utilizzando
adb shell content read
oadb pull CTSVerifierReportPath
.Per Android 7.x e versioni successive, scarica tutti i report utilizzando il seguente comando:
adb pull /sdcard/verifierReports
Per Android 6.0 e versioni precedenti, scarica tutti i report utilizzando il seguente comando:
adb pull /mnt/sdcard/ctsVerifierReports/
Per Android 10 e versioni successive, implementa Automobile e i dispositivi in esecuzione come utente secondario, scarica il report più recente utilizzando il seguente comando:
adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/latest > report.zip
Per elencare tutti i report disponibili nel dispositivo connesso:
adb shell content query --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports
Per scaricare un report dall'elenco, puoi specificare l'ID riga o il nome del file. Ad esempio:
adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/0 > report.zip adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/ctsVerifierReport-date-time.zip > report.zip
Per cancellare i risultati superati o non superati, selezionali nell'app CTS Verifier e seleziona Menu > Cancella.