Công cụ xác thực tiện ích cho máy ảnh cho phép nhà sản xuất thiết bị xác minh rằng thư viện nhà cung cấp OEM của Tiện ích cho máy ảnh được triển khai đúng cách. Công cụ này bao gồm các bài kiểm thử xác thực tự động và thủ công.
Bài kiểm thử xác thực tự động: xác thực rằng giao diện thư viện nhà cung cấp được triển khai đúng cách. Ví dụ: nếu
CaptureProcessorlà bắt buộc để chụp ảnh, thì các bài kiểm thử sẽ xác thực rằngImageCaptureExtenderImpl#getCaptureStages()trả về các thực thểCaptureStagecần thiết để chụp ảnh.Bài kiểm thử xác thực thủ công: Xác thực hiệu ứng hình ảnh và chất lượng của bản xem trước và hình ảnh đã chụp. Ví dụ: các bài kiểm thử cho phép nhà sản xuất thiết bị xác thực theo cách thủ công xem hiệu ứng chỉnh sửa khuôn mặt có được áp dụng đúng cách hay không hoặc độ mạnh của hiệu ứng bokeh có đủ hay không.
Mã nguồn của công cụ xác thực là một phần của ứng dụng kiểm thử tiện ích trong kho lưu trữ Android Jetpack.
Tạo công cụ xác thực tiện ích cho máy ảnh
Để tạo công cụ xác thực tiện ích, hãy làm theo các bước sau:
Tải mã nguồn thư viện Android Jetpack xuống. Để biết thông tin chi tiết, hãy xem phần Kiểm tra mã trong tệp README của Android Jetpack.
Tạo
extensionstestappAPK. Thao tác này cho phép chạy các bài kiểm thử xác thực thủ công.cd path/to/checkout/frameworks/support/./gradlew camera:integration-tests:camera-testapp-extensions:assembleDebugAPK được xuất ra theo đường dẫn sau:
path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/debug/camera-testapp-extensions-debug.apkTạo
androidTestAPK. APK này cho phép chạy các bài kiểm thử xác thực tự động.cd path/to/checkout/frameworks/support/./gradlew camera:integration-tests:camera-testapp-extensions:assembleAndroidTestAPK được xuất ra theo đường dẫn sau:
path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/androidTest/debug/camera-testapp-extensions-debug-androidTest.apk
Chạy các bài kiểm thử xác thực tự động
Để chạy các bài kiểm thử xác thực tự động, hãy cài đặt APK extensionstestapp và androidTest.
APK
extensionstestappadb install -r path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/debug/camera-testapp-extensions-debug.apkAPK
androidTestadb install -r path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/androidTest/debug/camera-testapp-extensions-debug-androidTest.apk
Chạy tất cả các bài kiểm thử tự động
Sau khi cài đặt APK, để chạy tất cả các bài kiểm thử tự động nhằm xác thực việc triển khai thư viện nhà cung cấp, hãy chạy lệnh sau:
adb shell am instrument -w -r androidx.camera.integration.extensions.test/androidx.test.runner.AndroidJUnitRunnerNếu tất cả các bài kiểm thử đều vượt qua, thì kết quả OK sẽ được trả về. Nếu không, báo cáo kiểm thử cuối cùng sẽ cho thấy các lỗi trong thiết bị đầu cuối sau khi tất cả các bài kiểm thử hoàn tất.
Hình 1. Kết quả OK của các bài kiểm thử tự động
Hình 2. Kết quả của các bài kiểm thử tự động có lỗi
Chạy các bài kiểm thử tự động của một lớp cụ thể
Để chạy các bài kiểm thử tự động của một lớp cụ thể, hãy chỉ định tên và đường dẫn của lớp mục tiêu. Ví dụ sau đây cho thấy lệnh chạy các bài kiểm thử cho lớp ImageCaptureTest:
adb shell am instrument -w -r -e class **androidx.camera.integration.extensions.ImageCaptureTest** androidx.camera.integration.extensions.test/androidx.test.runner.AndroidJUnitRunnerChạy các bài kiểm thử xác thực thủ công
Các bài kiểm thử xác thực thủ công có trong ứng dụng kiểm thử tiện ích. Sau khi cài đặt và khởi chạy ứng dụng kiểm thử tiện ích, hãy chuyển sang chế độ công cụ xác thực bằng cách nhấn vào mục trình đơn ở trên cùng bên phải.
Sau khi chuyển sang chế độ công cụ xác thực, trang đầu tiên sẽ liệt kê tất cả các máy ảnh
có tính năng
REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE. Nếu một máy ảnh không hỗ trợ bất kỳ chế độ tiện ích nào, thì mục tương ứng trong danh sách sẽ có màu xám.
Hình 3. Chế độ công cụ xác thực
Nhấn vào một trong các máy ảnh để xem các chế độ tiện ích cần kiểm thử. Các chế độ tiện ích không được máy ảnh đã chọn hỗ trợ sẽ có màu xám.
Hình 4. Các chế độ tiện ích có sẵn cho một máy ảnh
Xác minh kết quả xem trước
Để xác minh kết quả xem trước, hãy bắt đầu một bài kiểm thử thủ công bằng cách nhấn vào một chế độ tiện ích cho máy ảnh đã chọn. Sau đó, một hoạt động chụp ảnh có bản xem trước sẽ xuất hiện.
Hình 5. Hình ảnh xem trước có bật hiệu ứng bokeh
Hoạt động chụp ảnh hỗ trợ các hàm sau:
- Phóng to/thu nhỏ
- Nhấn để lấy nét
- Nút chuyển đổi chế độ đèn flash
- EV +/-
- Nút chuyển đổi bật/tắt tiện ích
Xác minh rằng các hàm phóng to/thu nhỏ, nhấn để lấy nét, chế độ đèn flash và EV +/- hoạt động như dự kiến trong bản xem trước.
Xác minh kết quả hình ảnh đã chụp
Để chụp ảnh, hãy nhấn vào nút CAPTURE (CHỤP) (nút tròn) trong hoạt động chụp ảnh. Thao tác này sẽ khởi chạy một hoạt động xác thực hình ảnh cho thấy hình ảnh đã chụp.
Hình 6. Hình ảnh đã chụp có bật hiệu ứng bokeh
Hoạt động xác thực hình ảnh bao gồm các hàm sau:
- Chụm/duỗi ngón tay để điều chỉnh tỷ lệ hình ảnh
- Trượt sang trái/phải để chuyển đổi hình ảnh đã chụp
- Chụp ảnh lại
- Mục trình đơn Lưu ảnh
Xác minh xem hình ảnh đã chụp có chính xác và khớp với các chế độ cài đặt phóng to/thu nhỏ, nhấn để lấy nét, chế độ đèn flash và EV +/- đã được đặt khi chụp ảnh hay không.
Nếu kết quả đã chụp là chính xác, hãy nhấn vào nút PASS (VƯỢT QUA) (dấu kiểm) ở góc dưới cùng bên phải. Nếu không, hãy nhấn vào nút FAIL (KHÔNG VƯỢT QUA) (dấu chấm than) ở góc dưới cùng bên trái.
Xem kết quả thử nghiệm
Sau khi một chế độ tiện ích được xác minh là vượt qua hoặc không vượt qua, mục trong danh sách cho chế độ tiện ích sẽ cho thấy một màu nền và chỉ báo khác. Trong chế độ xem danh sách của tất cả các máy ảnh, các mục sẽ xuất hiện bằng các màu sau:
- Nền trắng: Máy ảnh hỗ trợ ít nhất một chế độ tiện ích và các chế độ tiện ích được hỗ trợ chưa được xác thực hoàn toàn.
- Nền xanh lục: Máy ảnh hỗ trợ ít nhất một chế độ tiện ích. Tất cả các chế độ tiện ích được hỗ trợ đều được xác thực và tất cả kết quả đều vượt qua.
- Nền đỏ: Máy ảnh hỗ trợ ít nhất một chế độ tiện ích. Tất cả các chế độ tiện ích được hỗ trợ đều được xác thực và ít nhất một kết quả của chế độ tiện ích không vượt qua.
- Nền xám: Tính năng này không hoạt động.
Hình 7. Màu cho biết kết quả kiểm thử cho máy ảnh và chế độ tiện ích
Các hàm khác của công cụ xác thực
Sau khi tất cả các bài kiểm thử hoàn tất, hoạt động danh sách máy ảnh sẽ cung cấp các hàm sau:
- Xuất kết quả kiểm thử: Xuất kết quả kiểm thử dưới dạng tệp CSV vào thư mục
Documents/ExtensionsValidation. - Đặt lại: Xoá tất cả kết quả kiểm thử được lưu vào bộ nhớ đệm.
- Ứng dụng mẫu tiện ích: Chuyển sang chế độ ứng dụng mẫu tiện ích
Sau khi hoàn tất quá trình kiểm thử, bạn có thể xuất kết quả kiểm thử. Nếu bạn phát hiện một vấn đề và cần xác minh lại phiên bản mới của việc triển khai thư viện nhà cung cấp có các giải pháp, hãy đặt lại kết quả kiểm thử trước đó và chạy lại tất cả các chế độ tiện ích được hỗ trợ trên tất cả các máy ảnh để xác minh rằng các vấn đề đã được khắc phục.