Validierungstool für Kameraerweiterungen

Mit dem Validierungstool für Kameraerweiterungen können Gerätehersteller überprüfen Sie, ob die OEM-Anbieterbibliothek für Kameraerweiterungen korrekt implementiert ist. Das Tool umfasst automatisierte und manuelle Validierungen. Tests durchführen.

  • Automatisierte Validierungstests: Validieren Sie, dass die Anbieterbibliothek -Schnittstelle korrekt implementiert ist. Beispiel: CaptureProcessor ist die für die Bilderfassung erforderlich sind, ImageCaptureExtenderImpl#getCaptureStages() gibt die erforderlichen CaptureStage Instanzen zum Erfassen der Bilder.

  • Manuelle Validierungstests: Validieren Sie die Bildeffekte und die Qualität von Vorschau und aufgenommene Bilder. Die Tests ermöglichen beispielsweise können Hersteller manuell überprüfen, ob der Gesichtsretusche-Effekt richtig angewendet wird oder ob die Bokeh-Stärke ausreichend ist.

Der Quellcode des Validierungstools ist Teil des Test-App für Erweiterungen in der Android Jetpack-Repository.

Validierungstool für Kameraerweiterungen erstellen

So erstellen Sie das Tool zur Erweiterungsvalidierung:

  1. Laden Sie den Quellcode der Android Jetpack-Bibliothek herunter. Weitere Informationen finden Sie in der Code ansehen des Abschnitts README-Datei für Android Jetpack

  2. Erstellen Sie die extensionstestapp APK Dadurch können manuelle Validierungstests ausgeführt werden.

      cd path/to/checkout/frameworks/support/
      ./gradlew camera:integration-tests:camera-testapp-extensions:assembleDebug
    

    Das APK wird im folgenden Pfad ausgegeben:

      path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/debug/camera-testapp-extensions-debug.apk
    
  3. Erstellen Sie die androidTest APK Mit diesem APK können automatisierte Validierungstests ausgeführt werden.

      cd path/to/checkout/frameworks/support/
      ./gradlew camera:integration-tests:camera-testapp-extensions:assembleAndroidTest
    

    Das APK wird im folgenden Pfad ausgegeben:

      path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/androidTest/debug/camera-testapp-extensions-debug-androidTest.apk
    

Automatisierte Validierungstests ausführen

Installieren Sie zum Ausführen der automatischen Validierungstests extensionstestapp und androidTest APKs.

  • extensionstestapp APK

      adb install -r path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/debug/camera-testapp-extensions-debug.apk
    
  • androidTest APK

      adb install -r path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/androidTest/debug/camera-testapp-extensions-debug-androidTest.apk
    

Alle automatisierten Tests ausführen

Nach der Installation der APKs zum Ausführen aller automatisierten Tests zur Validierung des Anbieters Bibliotheksimplementierung den folgenden Befehl aus:

adb shell am instrument -w -r androidx.camera.integration.extensions.test/androidx.test.runner.AndroidJUnitRunner

Wenn alle Tests bestanden wurden, wird das Ergebnis OK zurückgegeben. Andernfalls wird der endgültige Testbericht zeigt nach Abschluss aller Tests Fehler im Terminal an.

automatisierte_Validierung_Ergebnisdurchlauf

Abbildung 1: Automatisierte Tests OK-Ergebnis

automated_validation_result-fail

Abbildung 2: Automatisierte Testergebnisse mit Fehlern

Automatisierte Tests einer bestimmten Klasse ausführen

Um automatisierte Tests für eine bestimmte Klasse auszuführen, geben Sie den Namen und den Pfad der Zielklasse. Das folgende Beispiel zeigt den Befehl zum Ausführen von Tests für die Klasse ImageCaptureTest:

adb shell am instrument -w -r -e class **androidx.camera.integration.extensions.ImageCaptureTest** androidx.camera.integration.extensions.test/androidx.test.runner.AndroidJUnitRunner

Manuelle Validierungstests ausführen

Die manuellen Validierungstests finden Sie in der Test-App für Erweiterungen testen. Wechseln Sie nach der Installation und dem Start der Test-App für Erweiterungen zur Validierungstool durch Tippen auf den Menüpunkt oben rechts.

Nach dem Wechsel in den Modus mit dem Validierungstool werden auf der ersten Seite alle Kameras die den Parameter REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE Wenn eine Kamera keinen Erweiterungsmodus unterstützt, werden die zugehörigen Listenelement grau ist.

Camera_validation_result-initial

Abbildung 3: Modus des Validierungstools

Tippen Sie auf eine der Kameras, um die zu testenden Erweiterungsmodi zu sehen. Erweiterung nicht von der ausgewählten Kamera unterstützten Modi sind grau dargestellt.

Erweiterungsmodus_Validierung_Ergebnis-Anfang

Abbildung 4: Erweiterungsmodi für eine Kamera

Vorschau der Ergebnisse prüfen

Um die Vorschauergebnisse zu überprüfen, starten Sie einen manuellen Test, indem Sie auf Erweiterungsmodus für die ausgewählte Kamera. Eine Bilderfassungsaktivität mit wird die Vorschau angezeigt.

„preview-bokeh_enabled“

Abbildung 5: Vorschaubild mit aktiviertem Bokeh

Die Bilderfassungsaktivität unterstützt die folgenden Funktionen:

  • Heran-/Herauszoomen
  • Zum Fokussieren tippen
  • Schaltfläche zum Wechseln des Blitzmodus
  • LW +/-
  • Schalter zum Aktivieren/Deaktivieren der Erweiterung

Stellen Sie sicher, dass die Funktionen zum Heran- und Herauszoomen, Die Funktionen „EV +/-“ funktionieren in der Vorschau wie erwartet.

Erfasste Bildergebnisse prüfen

Tippen Sie zum Aufnehmen des Bildes auf die Schaltfläche AUFNAHME (die runde Schaltfläche) im Bild. Aktivitäten aufzeichnen. Dadurch wird eine Bildvalidierungsaktivität gestartet, die das aufgenommene Bild zeigt.

foto_viewer-bokeh_enabled

Abbildung 6: Aufgenommenes Bild mit aktiviertem Bokeh

Die Bildvalidierungsaktivität umfasst die folgenden Funktionen:

  • Ziehe die Finger zusammen oder auseinander, um das Bild zu skalieren
  • Ziehen Sie den Finger nach links/rechts, um zwischen den aufgenommenen Bildern zu wechseln.
  • Wiederaufnahme
  • Menüpunkt „Bild speichern“

Überprüfen, ob das aufgenommene Bild korrekt und mit dem Zoom übereinstimmt Ein-/Aus-Taste, Touch-to-Fokus, Blitzmodi und Lichtwert +/− um das Bild aufzunehmen.

Wenn die erfassten Ergebnisse korrekt sind, tippen Sie auf die Schaltfläche ERLEDIGT (Häkchen) in der in der rechten unteren Ecke. Tippen Sie andernfalls auf die Schaltfläche FEHLGESCHLAGEN (Ausrufezeichen) in in der unteren linken Ecke.

Testergebnisse abrufen

Nachdem ein Erweiterungsmodus als bestanden oder nicht bestanden wurde, wird das Listenelement für den Im Erweiterungsmodus wird eine andere Hintergrundfarbe und eine andere Anzeige angezeigt. In der Liste der Kameras angezeigt wird, werden diese in den folgenden Farben angezeigt:

  • Weißer Hintergrund: Die Kamera unterstützt mindestens einen Erweiterungsmodus und Die unterstützten Erweiterungsmodi werden nicht vollständig validiert.
  • Grüner Hintergrund:Die Kamera unterstützt mindestens einen Erweiterungsmodus. Alle unterstützten Erweiterungsmodi validiert werden, wobei alle Ergebnisse übergeben werden.
  • Roter Hintergrund:Die Kamera unterstützt mindestens einen Erweiterungsmodus. Alle Unterstützte Erweiterungsmodi werden mit mindestens einem Erweiterungsmodus validiert zu einem Fehlschlagen des Ergebnisses führen.
  • Grauer Hintergrund:Diese Funktion ist nicht verfügbar.

Camera_validation_result Erweiterungsmodus_Validierung_Ergebnis

Abbildung 7: Farben, die Testergebnisse für Kameras und Erweiterungsmodi anzeigen

Weitere Funktionen des Validierungstools

Nach Abschluss aller Tests liefert die Aktivität zur Kameraliste folgenden Funktionen:

  • Testergebnisse exportieren: Exportiert die Testergebnisse als CSV-Datei in den Documents/ExtensionsValidation-Ordner.
  • Zurücksetzen:Alle im Cache gespeicherten Testergebnisse werden gelöscht.
  • Extensions sample app (Beispiel-App für Erweiterungen): Wechselt zur Beispiel-App für Erweiterungen. .

Nach Abschluss des Tests können Sie die Testergebnisse exportieren. Wenn Sie eine und eine neue Version der Implementierung der Vendor Library mit dem Lösungen müssen noch einmal überprüft werden. Setzen Sie die vorherigen Testergebnisse zurück und führen Sie sie noch einmal aus. Erweiterungsmodi auf allen unterstützten Kameras aufrufen, um zu prüfen, behoben wurden.