Lo strumento di convalida delle estensioni della fotocamera consente ai produttori di dispositivi di verificare che la libreria del fornitore OEM di Estensioni della fotocamera sia implementata correttamente. Lo strumento include test di convalida automatica e manuale.
Test di convalida automatici: verificano che l'interfaccia della libreria del fornitore sia implementata correttamente. Ad esempio, se è necessario
CaptureProcessor
per l'acquisizione delle immagini, i test convalidano cheImageCaptureExtenderImpl#getCaptureStages()
restituisca le istanzeCaptureStage
richieste per acquisire le immagini.Test di convalida manuale:convalida gli effetti e la qualità delle immagini di anteprima e acquisite. Ad esempio, i test consentono ai produttori di dispositivi di confermare manualmente se l'effetto di ritocco viso è applicato correttamente o se l'intensità del bokeh è sufficiente.
Il codice sorgente dello strumento di convalida fa parte dell'app di test delle estensioni nel repository Android Jetpack.
Creare lo strumento di convalida delle estensioni della videocamera
Per creare lo strumento di convalida delle estensioni:
Scarica il codice sorgente della libreria Android Jetpack. Per maggiori dettagli, consulta la sezione Eseguire il check-out del codice del file README di Android Jetpack.
Crea l'APK
extensionstestapp
. In questo modo è possibile eseguire test di convalida manuale.cd path/to/checkout/frameworks/support/
./gradlew camera:integration-tests:camera-testapp-extensions:assembleDebug
L'APK viene visualizzato nel seguente percorso:
path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/debug/camera-testapp-extensions-debug.apk
Crea l'APK
androidTest
. Questo APK consente di eseguire test di convalida automatici.cd path/to/checkout/frameworks/support/
./gradlew camera:integration-tests:camera-testapp-extensions:assembleAndroidTest
L'APK viene visualizzato nel seguente percorso:
path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/androidTest/debug/camera-testapp-extensions-debug-androidTest.apk
Esegui test di convalida automatici
Per eseguire i test di convalida automatica, installa gli APK extensionstestapp
e
androidTest
.
APK
extensionstestapp
adb install -r path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/debug/camera-testapp-extensions-debug.apk
androidTest
APKadb install -r path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/androidTest/debug/camera-testapp-extensions-debug-androidTest.apk
Esegui tutti i test automatici
Dopo aver installato gli APK, per eseguire tutti i test automatici per convalidare l'implementazione della libreria del fornitore, esegui il seguente comando:
adb shell am instrument -w -r androidx.camera.integration.extensions.test/androidx.test.runner.AndroidJUnitRunner
Se tutti i test vengono superati, viene restituito il risultato OK. In caso contrario, il report di test finale mostra gli errori nel terminale al termine di tutti i test.
Figura 1. Risultato OK dei test automatici
Figura 2. I test automatici generano errori
Eseguire test automatici di una classe specifica
Per eseguire test automatici di una classe specifica, specifica il nome e il percorso della
classe di destinazione. L'esempio seguente mostra il comando per eseguire i test per la classe ImageCaptureTest
:
adb shell am instrument -w -r -e class **androidx.camera.integration.extensions.ImageCaptureTest** androidx.camera.integration.extensions.test/androidx.test.runner.AndroidJUnitRunner
Eseguire test di convalida manuali
I test di convalida manuale si trovano nell'app di test delle estensioni. Dopo aver installato e avviato l'app di test delle estensioni, passa alla modalità dello strumento di convalida toccando la voce di menu in alto a destra.
Dopo aver attivato la modalità dello strumento di convalida, la prima pagina elenca tutte le videocamere che contengono la funzionalità REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE
. Se una videocamera non supporta alcuna modalità di estensione, la voce dell'elenco corrispondente
è in grigio.
Figura 3. Modalità dello strumento di convalida
Tocca una delle fotocamere per vedere le modalità dell'estensione per i test. Le modalità di estensione non supportate dalla videocamera selezionata sono visualizzate in grigio.
Figura 4. Modalità di estensione disponibili per una videocamera
Verifica i risultati dell'anteprima
Per verificare i risultati dell'anteprima, avvia un test manuale toccando una modalità di estensione per la fotocamera selezionata. Viene mostrata un'attività di acquisizione di immagini contenente l'anteprima.
Figura 5. Anteprima immagine con il bokeh abilitato
L'attività di acquisizione di immagini supporta le seguenti funzioni:
- Zoom avanti/indietro
- Messa a fuoco a tocco
- Pulsante per cambiare modalità flash
- EV +/-
- Pulsante di attivazione/disattivazione dell'estensione
Verifica che lo zoom in/out, il tocco per mettere a fuoco, le modalità flash e le funzioni EV +/- funzionino come previsto nell'anteprima.
Verifica i risultati delle immagini acquisite
Per acquisire l'immagine, tocca il pulsante ACQUISISCI (il pulsante rotondo) nell'attività di acquisizione di immagini. Viene avviata un'attività di convalida dell'immagine che mostra l'immagine acquisita.
Figura 6. Immagine acquisita con il bokeh abilitato
L'attività di convalida delle immagini include le seguenti funzioni:
- Pizzica per aumentare/diminuire la scala dell'immagine
- Scorri verso sinistra/destra per cambiare le immagini acquisite
- Riacquisizione
- Elemento del menu Salva immagine
Verifica che l'immagine acquisita sia corretta e corrisponda alle impostazioni di zoom avanti e indietro, tocco per mettere a fuoco, modalità flash ed EV +/- configurate durante lo scatto dell'immagine.
Se i risultati acquisiti sono corretti, tocca il pulsante PASS (spunta) nell'angolo in basso a destra. In caso contrario, tocca il pulsante NON ANDATO A BUON FINE (punto esclamativo) nell'angolo in basso a sinistra.
Visualizzare i risultati dei test
Dopo che una modalità di estensione è stata verificata come superata o non riuscita, la voce dell'elenco per la modalità di estensione mostra un colore di sfondo e un indicatore diversi. Nella visualizzazione elenco di tutte le videocamere, gli elementi vengono visualizzati nei seguenti colori:
- Sfondo bianco: la fotocamera supporta almeno una modalità di estensione e le modalità di estensione supportate non sono completamente convalidate.
- Sfondo verde:la videocamera supporta almeno una modalità di estensione. Tutte le modalità di estensione supportate vengono convalidate con il superamento di tutti i risultati.
- Sfondo rosso: la fotocamera supporta almeno una modalità di estensione. Tutte le modalità di estensione supportate vengono convalidate con almeno un risultato della modalità di estensione errato.
- Sfondo grigio: questa funzionalità non è disponibile.
Figura 7. Colori che indicano i risultati dei test per le fotocamere e le modalità di estensione
Altre funzioni dello strumento di convalida
Al termine di tutti i test, l'attività dell'elenco delle videocamere fornisce le seguenti funzioni:
- Esporta risultati del test:esporta i risultati del test come file CSV nella
Documents/ExtensionsValidation
. - Reimposta:vengono cancellati tutti i risultati dei test memorizzati nella cache.
- App di esempio estensioni:consente di passare alla modalità app di esempio delle estensioni.
Al termine del test, puoi esportare i risultati. Se rilevi un problema e devi verificare di nuovo una nuova versione dell'implementazione della libreria di fornitori con le soluzioni, reimposta i risultati del test precedenti ed esegui nuovamente tutte le modalità di estensione supportate su tutte le fotocamere per verificare che i problemi siano stati risolti.