Kamera uzantıları doğrulama aracı, cihaz üreticilerinin Kamera Uzantıları OEM satıcı kitaplığının doğru şekilde uygulandığını doğrulamasını sağlar. Araç, otomatik ve manuel doğrulama testlerini içerir.
Otomatik doğrulama testleri: Satıcı kitaplığı arayüzünün doğru şekilde uygulandığını doğrulayın. Örneğin, görüntü yakalama için
CaptureProcessor
gerekiyorsa testlerImageCaptureExtenderImpl#getCaptureStages()
görüntüleri yakalamak için gerekliCaptureStage
örneklerini döndürdüğünü doğrular.Manuel doğrulama testleri: Önizleme ve çekilen görüntülerin görüntü efektlerini ve kalitesini doğrulayın. Örneğin testler, cihaz üreticilerinin yüz rötuş efektinin doğru şekilde uygulanıp uygulanmadığını veya bokeh gücünün yeterli olup olmadığını manuel olarak doğrulamasına olanak tanır.
Doğrulama aracının kaynak kodu , Android Jetpack deposundaki uzantı test uygulamasının bir parçasıdır.
Kamera uzantıları doğrulama aracını oluşturun
Uzantı doğrulama aracını oluşturmak için şu adımları izleyin:
Android Jetpack kütüphanesinin kaynak kodunu indirin. Ayrıntılar için Android Jetpack README'nin Kodu Kontrol Etme bölümüne bakın.
extensionstestapp
APK'sını oluşturun. Bu, manuel doğrulama testlerinin çalıştırılmasına olanak tanır.cd path/to/checkout/frameworks/support/
./gradlew camera:integration-tests:camera-testapp-extensions:assembleDebug
APK aşağıdaki yola çıktılanır:
path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/debug/camera-testapp-extensions-debug.apk
androidTest
APK'sını oluşturun. Bu APK, otomatik doğrulama testlerinin çalıştırılmasına olanak tanır.cd path/to/checkout/frameworks/support/
./gradlew camera:integration-tests:camera-testapp-extensions:assembleAndroidTest
APK aşağıdaki yola çıktılanır:
path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/androidTest/debug/camera-testapp-extensions-debug-androidTest.apk
Otomatik doğrulama testlerini çalıştırın
Otomatik doğrulama testlerini çalıştırmak için extensionstestapp
ve androidTest
APK'larını yükleyin.
extensionstestapp
APK'sı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
Tüm otomatik testleri çalıştırın
APK'ları yükledikten sonra satıcı kitaplığı uygulamasını doğrulamak amacıyla tüm otomatik testleri çalıştırmak için aşağıdaki komutu çalıştırın:
adb shell am instrument -w -r androidx.camera.integration.extensions.test/androidx.test.runner.AndroidJUnitRunner
Tüm testler başarılı olursa, Tamam sonucu döndürülür. Aksi takdirde, nihai test raporu, tüm testler tamamlandıktan sonra terminaldeki arızaları gösterir.
Şekil 1. Otomatik testlerin Tamam sonucu
Şekil 2. Hatalı otomatik testler sonucu
Belirli bir sınıfın otomatik testlerini çalıştırın
Belirli bir sınıfın otomatik testlerini çalıştırmak için hedef sınıfın adını ve yolunu belirtin. Aşağıdaki örnek, ImageCaptureTest
sınıfına yönelik testleri çalıştırma komutunu gösterir:
adb shell am instrument -w -r -e class **androidx.camera.integration.extensions.ImageCaptureTest** androidx.camera.integration.extensions.test/androidx.test.runner.AndroidJUnitRunner
Manuel doğrulama testlerini çalıştırın
Manuel doğrulama testleri, uzantı test uygulamasında bulunur. Uzantı test uygulamasını kurup başlattıktan sonra sağ üstteki menü öğesine dokunarak doğrulama aracı moduna geçin.
Doğrulama aracı moduna geçtikten sonra ilk sayfada REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE
özelliğini içeren tüm kameralar listelenir. Bir kamera herhangi bir genişletme modunu desteklemiyorsa ilgili liste öğesi gri renkte olur.
Şekil 3. Doğrulama aracı modu
Test amaçlı uzatma modlarını görmek için kameralardan birine dokunun. Seçilen kameranın desteklemediği genişletme modları gri renkte gösterilir.
Şekil 4. Bir kamera için kullanılabilen genişletme modları
Önizleme sonuçlarını doğrulayın
Önizleme sonuçlarını doğrulamak için seçilen kamera için bir genişletme moduna dokunarak manuel bir test başlatın. Daha sonra önizlemeyi içeren bir görüntü yakalama etkinliği gösterilir.
Şekil 5. Bokeh etkinleştirilmiş önizleme görüntüsü
Görüntü yakalama etkinliği aşağıdaki işlevleri destekler:
- Yakınlaştır/uzaklaştır
- Odaklanmak için dokunun
- Flaş modları değiştirme düğmesi
- EV +/-
- Uzantı etkin/devre dışı geçiş düğmesi
Yakınlaştırma/uzaklaştırma, dokunarak odaklama, flaş modları ve EV +/- işlevlerinin önizlemede beklendiği gibi çalıştığını doğrulayın.
Yakalanan görüntü sonuçlarını doğrulayın
Görüntüyü yakalamak için, görüntü yakalama etkinliğindeki YAKALA düğmesine (yuvarlak düğme) dokunun. Bu, yakalanan görüntüyü gösteren bir görüntü doğrulama etkinliğini başlatır.
Şekil 6. Bokeh etkinken çekilen görüntü
Görüntü doğrulama etkinliği aşağıdaki işlevleri içerir:
- Görüntüyü ölçeklendirmek için yakınlaştırın/uzaklaştırın
- Yakalanan görüntüleri değiştirmek için sola/sağa kaydırın
- Yeniden Yakalama
- Görüntü menü öğesini kaydet
Yakalanan görüntünün doğru olduğunu ve görüntüyü çekerken belirlenen yakınlaştırma/uzaklaştırma, dokunarak odaklama, flaş modları ve EV +/- ayarlarıyla eşleşip eşleşmediğini doğrulayın.
Yakalanan sonuçlar doğruysa sağ alt köşedeki PASS düğmesine (onay işareti) dokunun. Aksi takdirde, sol alt köşedeki BAŞARISIZ düğmesine (ünlem işareti) dokunun.
Test sonuçlarını görüntüle
Bir uzatma modunun başarılı veya başarısız olduğu doğrulandıktan sonra, uzatma moduna ilişkin liste öğesi farklı bir arka plan rengi ve göstergesi gösterir. Tüm kameraların liste görünümünde öğeler aşağıdaki renklerde görüntülenir:
- Beyaz arka plan: Kamera en az bir genişletme modunu destekler ve desteklenen genişletme modları tam olarak doğrulanmamıştır.
- Yeşil arka plan: Kamera en az bir genişletme modunu destekler. Desteklenen tüm uzantı modları, tüm sonuçların geçmesiyle doğrulanır.
- Kırmızı arka plan: Kamera en az bir genişletme modunu destekler. Desteklenen tüm uzantı modları, en az bir uzantı modu sonucunun başarısız olmasıyla doğrulanır.
- Gri arka plan: Bu özellik mevcut değil.
Şekil 7. Kameralar ve uzatma modları için test sonuçlarını gösteren renkler
Diğer doğrulama aracı işlevleri
Tüm testler tamamlandıktan sonra kamera listesi etkinliği aşağıdaki işlevleri sağlar:
- Test sonuçlarını dışa aktar: Test sonuçlarını CSV dosyası olarak
Documents/ExtensionsValidation
klasörüne aktarır. - Sıfırla: Önbelleğe alınmış tüm test sonuçlarını temizler.
- Uzantı örnek uygulaması: Uzantı örnek uygulama moduna geçiş yapar.
Testi tamamladıktan sonra test sonuçlarını dışa aktarabilirsiniz. Bir sorun bulursanız ve satıcı kitaplığı uygulamasının çözümlerle birlikte yeni bir sürümünün yeniden doğrulanması gerekiyorsa, önceki test sonuçlarını sıfırlayın ve sorunların giderildiğini doğrulamak için tüm kameralarda desteklenen tüm uzantı modlarını yeniden çalıştırın.