Kiểm thử hình ảnh từ camera bằng tính năng tự động hoá

Bộ kiểm thử hình ảnh của camera Android (ITS) là một phần của Trình xác minh Bộ kiểm thử tính tương thích (CTS) của Android và bao gồm các kiểm thử xác minh nội dung hình ảnh. CTS Verifier hỗ trợ tự động hoá kiểm thử ITS bằng Camera ITS-in-a-box; hỗ trợ kiểm thử thủ công cho tất cả các hệ số hình dạng của thiết bị Android.

ITS-in-a-box mang lại những lợi ích sau:

  • Tự động hoá. Không cần có sự can thiệp của con người trong quá trình kiểm thử.
  • Dễ khắc phục sự cố. Tính nhất quán của môi trường kiểm thử giúp giảm số lượng lỗi thiết lập và tăng khả năng tái tạo.
  • Hiệu quả. Khả năng thử lại cho từng camera/cảnh riêng lẻ giúp cải thiện hiệu quả thực thi kiểm thử.

Chọn giàn khoan

ITS-in-a-box bao gồm một hộp nhựa được cắt bằng laser từ bản vẽ thiết kế có sự trợ giúp của máy tính (CAD), một bảng biểu và một thiết bị đang được kiểm thử (DUT). Bảng sau đây mô tả các tính năng và quy cách của các thiết bị ITS-in-a-box hiện có. Để chọn giàn máy phù hợp, hãy cân nhắc trường nhìn cụ thể và khoảng cách lấy nét tối thiểu của DUT. Đối với hệ thống camera có góc nhìn từ 60 đến 110 độ và khoảng cách lấy nét tối thiểu từ 22 đến 31 cm, bạn nên dùng giàn đỡ cơ sở dạng mô-đun vì khả năng thích ứng của giàn đỡ này. Nếu hệ thống camera có ống kính tele có khoảng cách lấy tiêu điểm tối thiểu từ 31 cm đến 110 cm, thì bạn nên dùng một giàn đỡ cơ bản dạng mô-đun có phần mở rộng tele gần khớp với khoảng cách lấy tiêu điểm của ống kính. Ống nối tele có chiều dài từ 50 cm đến 90 cm.

Rig Khoảng cách trên biểu đồ Phạm vi FoV của camera DUT (xấp xỉ) Tính năng
Bộ giàn giáo cơ sở dạng mô-đun 22 cm 60° – 120°
  • Ít khí thải hơn
  • Vết cắt khẩu độ lớn ở mặt trước cho phép kiểm thử hệ thống nhiều camera mà không cần vết cắt chặn camera phụ
  • Bạn có thể xoay giàn 90°
  • Giàn chân máy dạng mô-đun và giàn chân máy dạng ống lồng 22 cm – 110 cm* 10° – 120°
  • Vết cắt có khẩu độ lớn ở phía trước
  • Hỗ trợ kiểm thử các camera có khoảng cách lấy tiêu điểm tối thiểu dài hơn (hầu hết camera tele)
  • Bạn có thể điều chỉnh độ dài của giàn đỡ mở rộng cho các khoảng cách biểu đồ khác nhau.
  • WFoV ITS-in-a-box 22 cm 60° – 120°
  • Kích thước lớn cho phép lắp đặt DUT ở nhiều vị trí
  • Hỗ trợ các DUT lớn, chẳng hạn như máy tính bảng
  • RFoV ITS-in-a-box 31 cm 60° – 90°
  • Máy tính bảng biểu đồ
  • Hệ thống chiếu sáng bên trong
  • ITS-in-a-box thế hệ thứ 2 31 cm 60° – 90°
  • Biểu đồ trên giấy
  • Hệ thống chiếu sáng bên trong
  • Để xác định giàn máy tối ưu cho DUT, bảng sau đây cung cấp ví dụ về ảnh chụp cho nhiều tổ hợp khoảng cách biểu đồ và tỷ lệ phần trăm thu phóng cảnh bằng cách sử dụng camera có góc nhìn 25° và khoảng cách lấy nét tối thiểu là 80 cm. Trong ví dụ này, giàn đế dạng mô-đun có phần mở rộng 30 cm hoặc 50 cm, dẫn đến khoảng cách biểu đồ là 50 cm hoặc 80 cm là phù hợp nhất. Hình ảnh được chụp ở khoảng cách 31 cm quá mờ và có thể dẫn đến lỗi kiểm thử.
    Khoảng cách trên biểu đồ Tỷ lệ phần trăm thu phóng cảnh Hình ảnh
    31 cm 33%
    50 cm 50%
    80 cm 100%

    Cách bắt đầu sử dụng Camera ITS-in-a-box:

    1. Mua hoặc tạo một mô-đun, WFoV hoặc RFoVhợp nhất cảm biến ITS-in-a-box.
    2. Định cấu hình máy tính bảng bằng phần mềm Camera ITS.
    3. Chạy kiểm thử.
    4. Nhận kết quả từ DUT.

    Định cấu hình máy tính bảng

    Phần này cung cấp hướng dẫn từng bước để thiết lập một máy tính bảng để sử dụng với các kiểm thử ITS Camera nằm trong thư mục CameraITS. Các hướng dẫn này sử dụng Pixel C làm ví dụ về máy tính bảng. Để biết thông tin về các yêu cầu và đề xuất đối với máy tính bảng, hãy xem bài viết Các yêu cầu đối với máy tính bảng.

    Lưu ý: Các tập lệnh Python của Camera ITS sẽ tự động thiết lập các lựa chọn sau trên máy tính bảng cho bạn:
    Cài đặt > Màn hình > Chế độ ngủ > Sau 30 phút không hoạt động
    Độ sáng thích ứng > TẮT

    1. Sạc máy tính bảng rồi bật nguồn. Nếu được nhắc thiết lập tài khoản, hãy bỏ qua bước này (Camera ITS không yêu cầu bất kỳ tài khoản nào được ghép nối với máy tính bảng).
    2. Cập nhật máy tính bảng lên Android 7.0 trở lên. Android 6.x trở xuống không hỗ trợ Camera ITS.
    3. Bật chế độ nhà phát triển.
    4. Quay lại phần Cài đặt rồi chọn Tuỳ chọn cho nhà phát triển.
      Bật các lựa chọn
      • Đang bật
      • Không khóa màn hình
      • Gỡ lỗi qua USB (Cho phép máy chủ chạy máy tính bảng ở chế độ gỡ lỗi. Khi bạn kết nối máy tính bảng với máy chủ lần đầu tiên, máy tính bảng sẽ nhắc bạn Cho phép gỡ lỗi qua USB? Nếu máy tính bảng không hiển thị lời nhắc gỡ lỗi, hãy ngắt kết nối rồi kết nối lại máy tính bảng.)
      Tắt các lựa chọn
      • Cập nhật hệ thống tự động
      • Xác minh ứng dụng qua USB
    5. Xác định DUT và mã biểu đồ bằng cách chạy $ adb devices để liệt kê các thiết bị có sẵn. Để xác định device_idchart_id, hãy cắm và rút phích cắm của các thiết bị rồi quan sát những thiết bị kết nối và ngắt kết nối.
    6. Thực hiện 3 lần chạy thử để loại bỏ các gợi ý và lời nhắc người dùng có thể che khuất biểu đồ trên màn hình máy tính bảng.
      1. Đặt máy tính bảng ngửa lên trên bàn (không gắn máy tính bảng vào mặt sau của hộp).
      2. Chạy lệnh sau:
        python tools/run_all_tests.py device=$device_id camera=0 chart=$chart_id scenes=2,3
        
        Cảnh 2 và 3 yêu cầu máy tính bảng hiển thị một hình ảnh, vì vậy, máy tính bảng sẽ nhắc bạn Cho phép Drive truy cập vào ảnh, nội dung nghe nhìn và tệp trên thiết bị của bạn?. Xoá lời nhắc này (và ngăn các lời nhắc trong tương lai) bằng cách nhấn vào Cho phép.
      3. Chạy lại lệnh. Máy tính bảng sẽ nhắc bạn Giữ lại một bản sao của tệp này? và đề xuất Google Drive. Xoá lời nhắc này (và ngăn các lời nhắc trong tương lai) bằng cách nhấn vào biểu tượng Drive rồi nhấn vào Huỷ để tải lên Drive.
      4. Cuối cùng, hãy chạy tools/run_all_tests.py và xác nhận rằng các cảnh sẽ tự động thay đổi khi tập lệnh chuyển qua các cảnh khác nhau. Mặc dù hầu hết các bài kiểm tra đều không thành công (vì camera không hướng vào biểu đồ), nhưng bạn có thể xác minh rằng máy tính bảng chuyển đổi chính xác giữa các cảnh mà không hiển thị bất kỳ lời nhắc hoặc cửa sổ bật lên nào khác trên màn hình.

    Chạy chương trình kiểm thử

    Trước khi chạy ITS-in-a-box, hãy đảm bảo rằng chế độ thiết lập kiểm thử của bạn bao gồm phần cứng và phần mềm sau:

    • Một (1) ITS-in-a-box
    • Một (1) máy tính bảng 10 inch có độ phân giải cao để hiển thị cảnh, số sê-ri: 5811000011
    • Một (1) DUT đã cài đặt ứng dụng CTS Verifier 7.0_8+. Ví dụ về DUT:
      • Một (1) Pixel NOF26W để kiểm thử camera sau(0), số sê-ri: FA6BM0305016. Để cài đặt ứng dụng Trình xác minh CTS, hãy giải nén android-cts-verifier.zip rồi chạy
        adb -s FA6BM0305016 install -r -g android-cts-verifier/CtsVerifier.apk
        

    Chạy các cảnh dựa trên máy tính bảng

    Cách chạy các cảnh 0 đến 4, 6 và scene_change trên camera sau:

    cd android-cts-verifier/CameraITS
    . build/envsetup.sh
    python tools/run_all_tests.py camera=0
    

    Ví dụ:

    Camera 0 S/N: FA6BM0305016
    Hình 1. Số sê-ri của camera 0: FA6BM0305016

    Thử lại cảnh

    Bạn có thể thử lại các cảnh cho một camera:

    • Cách thử lại cảnh trên một camera:
      python tools/run_all_tests.py device=FA6BM0305016 camera=0 scenes=3,4
      

    Chạy cảnh 5

    Cảnh 5 yêu cầu chế độ thiết lập đặc biệt với ánh sáng cụ thể (để biết chi tiết, hãy tham khảo CameraITS.pdf trong CTS Verifier. Bạn có thể tải CTS Verifier xuống tại Compatibility Test Suite Downloads (Tải Bộ kiểm tra tính tương thích xuống)). Bạn phải chạy cảnh 5 riêng biệt (bên ngoài hộp) và bằng TEST_BED_MANUAL testbed.

    camera scene 5
    Hình 2. Cảnh 5 của camera

    Cách chạy cảnh 5 cho camera trước và sau trên một thiết bị:

    python tools/run_all_tests.py device=FA6BM0305016 camera=0 scenes=5
    python tools/run_all_tests.py device=FA6BM0305016 camera=1 scenes=5
    

    Nhận kết quả

    Bạn có thể xem kết quả trong quá trình kiểm thử và lưu kết quả đã hoàn tất dưới dạng báo cáo.

    • Xem kết quả. Cách lưu kết quả Camera ITS dưới dạng báo cáo:
      1. Nhấn vào Pass (Bỏ qua) rồi lưu báo cáo.
        báo cáo ITS của camera
        Hình 3. Báo cáo ITS của camera
      2. Lấy báo cáo từ thiết bị:
        adb -s FA6BM0305016 pull /sdcard/verifierReports
        
      3. Giải nén tệp báo cáo và xem test_result.xml.
        báo cáo ITS của camera
        Hình 4. Báo cáo ITS của camera

    Yêu cầu đối với máy tính bảng

    Đối với Android 15 trở lên, những máy tính bảng được dùng làm màn hình hiển thị biểu đồ ITS phải có trong danh sách cho phép sau đây. Để biết danh sách các máy tính bảng hỗ trợ kiểm thử cảnh trong điều kiện ánh sáng yếu, hãy xem phần Máy tính bảng được hỗ trợ cho cảnh trong điều kiện ánh sáng yếu. Đối với Android 14 trở xuống, hãy xem Yêu cầu đối với máy tính bảng chạy Android 14 trở xuống.

    Các máy tính bảng trong danh sách cho phép được chọn dựa trên các tiêu chí sau:

    • Kích thước màn hình khoảng 10 inch với độ phân giải màn hình lớn hơn 1920 x 1200 pixel.
    • Không được có hiện tượng nhấp nháy đo được do tính năng làm mờ màn hình được kiểm soát bằng phương pháp điều chế độ rộng xung (PWM).
    • Có khả năng thực thi các lệnh adb do các bài kiểm thử ITS gửi và hiển thị hình ảnh biểu đồ với độ sáng màn hình theo hướng dẫn.

    Bạn phải đặt giá trị brightness trong config.yml theo kiểu máy tính bảng. Để xác định xem mẫu máy tính bảng của bạn có tương ứng với một tên thiết bị trong danh sách cho phép hay không, hãy in giá trị ro.product.device bằng cách chạy lệnh adb adb shell getprop | grep 'ro.product.device'.

    Thiết bị Kích thước màn hình
    (inch)
    Kích thước hiển thị
    (pixel)
    Kích thước máy tính bảng
    (inch)
    Độ sáng
    màn hình
    Tên thiết bị
    (ro.product
    .device)
    Phiên bản hệ điều hành
    của máy tính bảng
    Google
    Pixel C
    10.2 2560 x 1800 9,53 x 7,05 x 0,28 96 rồng Android 6 trở lên
    Honor
    Pad 8
    11 2000 x 1200 10,18 x 6,76 x 0,29 192 HNHEY-Q Android 12
    Huawei
    MediaPad m5
    10.8 2560 x 1600 10,18 x 6,76 x 0,29 192 HWCMR09 Android 8 trở lên
    Lenovo
    Tab M10 Plus
    10.3 1920 x 1200 9,61 x 6,03 x 0,32 192 X606F Android 9 trở lên
    Lenovo
    Tab P11
    11 2000 x 1200 10,17 x 6,42 x 0,30 192 J606F Android 11 trở lên
    Lenovo
    Tab P11 Gen2
    11,5 2000 x 1200 10,59 x 6,67 x 0,29 192 TB350FU Android 13 trở lên
    Nokia
    T21
    10.4 2000 x 1200 9,74 x 6,19 x 0,30 192 AGTA Android 12 trở lên
    Samsung
    Galaxy Tab A7
    10.4 2000 x 1200 9,75 x 6,2 x 0,28 192 gta4lwifi Android 10 trở lên
    Samsung
    Galaxy Tab A8
    10,5 1920 x 1200 9,72 x 6,73 x 0,27 192 gta8wifi Android 11 trở lên
    Samsung
    Galaxy Tab A9+
    11 1920 x 1200 10,12 x 6,64 x 0,27 192 gta9pwifi Android 13 trở lên
    Vivo
    Pad2
    12.1 2800 x 1968 10,47 x 7,54 x 0,26 192 DPD2221 Android 13 trở lên
    Xiaomi
    Pad 5
    11 2560 x 1600 10,18 x 6,76 x 0,29 192 nabu Android 13 trở lên
    Xiaomi
    Redmi
    Pad
    10,61 2000 x 1200 9,86 x 6,22 x 0,28 192 yunluo Android 14 trở lên
    Xiaomi
    Redmi
    Pad SE
    11 2560 x 1600 10,06 x 6,58 x 0,29 192 xun Android 13 trở lên

    Máy tính bảng được hỗ trợ cho cảnh thiếu sáng

    Bảng sau đây liệt kê những máy tính bảng hỗ trợ kiểm thử cho cảnh thiếu sáng. Những máy tính bảng này có thể đạt đến mức độ sáng cần thiết cho các cảnh thiếu sáng, cho phép DUT phơi sáng biểu đồ một cách chính xác.
    Thiết bị Tên thiết bị (ro.product.device) Phiên bản hệ điều hành của máy tính bảng
    Huawei
    MediaPad m5
    HWCMR09 Android 8 trở lên
    Samsung Galaxy Tab A8 gta8wifi Android 11 trở lên
    Samsung Galaxy Tab A9+ gta9pwifi Android 13 trở lên
    Xiaomi Pad 5 nabu Android 13 trở lên
    Xiaomi
    Redmi
    Pad SE
    xun Android 13 trở lên

    Yêu cầu đối với máy tính bảng chạy Android 14 trở xuống

    Máy tính bảng phải có kích thước màn hình khoảng 10 inch với độ phân giải màn hình lớn hơn 1920 x 1200 pixel. Máy tính bảng không được sử dụng phương pháp điều chế độ rộng xung (PWM) để đặt mức độ sáng. Bạn phải đặt giá trị brightness trong config.yml theo kiểu máy tính bảng. Bảng dưới đây liệt kê các máy tính bảng được đề xuất để kiểm thử ITS cùng với các phiên bản phát hành Android cho DUT mà máy tính bảng hoạt động.

    Thiết bị Kích thước màn hình
    (inch)
    Kích thước hiển thị
    (pixel)
    Kích thước máy tính bảng
    (inch)
    Độ sáng
    màn hình
    Hiển thị
    bit
    Hệ điều hành DUT
    được hỗ trợ
    Hệ điều hành máy tính bảng
    được hỗ trợ
    Samsung
    Galaxy Tab A8
    10,5 1920 x 1200 9,72 x 6,37 x 0,27 192 8 Android 13 trở lên Android 11 trở lên
    Xiaomi
    Pad 5
    11 2560 x 1600 10,03 x 6,55 x 0,27 1024 11 Android 12 trở lên Chỉ dành cho Android 11
    Lenovo
    Tab M10 Plus
    10.3 1920 x 1200 9,61 x 6,03 x 0,32 192 8 Android 12 trở lên Android 9 trở lên
    Samsung
    Galaxy Tab A7
    10.4 2000 x 1200 9,75 x 6,2 x 0,28 192 8 Android 12 trở lên Android 10 trở lên
    Chuwi
    Hi9 Air 10.1
    10.1 2560 x 1600 9,52 x 6,77 x 0,31 192 8 Android 7 trở lên Android 8 trở lên
    Asus
    ZenPad 3
    9.7 2048 x 1536 9,47 x 6,44 x 0,28 192 8 Android 7 trở lên Android 6 trở lên
    Huawei
    MediaPad m5
    10.8 2560 x 1600 10,18 x 6,76 x 0,29 192 8 Android 7 trở lên Android 8 trở lên
    Google
    Pixel C
    10.2 2560 x 1800 9,53 x 7,05 x 0,28 96 8 Android 7 trở lên Android 6 trở lên
    Sony
    Xperia Z4
    10.1 2560 x 1600 10 x 6,57 x 0,24 192 8 Android 7 trở lên Android 5 trở lên

    Câu hỏi thường gặp

    Câu hỏi 1: Làm cách nào để xác định những thiết bị kiểm thử cần thiết cho thiết bị của tôi?

    ITS-in-a-box phiên bản 1 RFoV kiểm thử camera RFoV cho các bài kiểm thử cảnh trên máy tính bảng trong thư mục CameraITS/tests. RFoV được xác định là 60° < FoV < 90°. Đối với các camera có FoV lớn hơn, đèn có thể xuất hiện trong hình ảnh hoặc biểu đồ có thể bao phủ một vùng quá nhỏ trong FoV, ảnh hưởng đến kết quả kiểm thử.

    WFoV ITS-in-a-box phiên bản 2 kiểm thử camera WFoV cho các bài kiểm thử cảnh trên máy tính bảng trong thư mục CameraITS/tests. WFoV được xác định là FoV >= 90°. Giàn thử nghiệm phiên bản 2 có chức năng giống hệt phiên bản 1, nhưng lớn hơn. Thiết bị kiểm thử phiên bản 2 có thể kiểm thử cả camera RFoV và WFoV trong Android 9 trở lên. Với kích thước lớn hơn, bản sửa đổi 2 là lựa chọn lý tưởng nếu DUT là máy tính bảng

    Giàn cơ sở dạng mô-đun kiểm thử camera WFoV cho các bài kiểm thử cảnh trên máy tính bảng trong thư mục CameraITS/tests. WFoV được xác định là FoV >= 90°. Thiết bị cơ sở dạng mô-đun có thể kiểm thử cả camera RFoV và WFoV cho các thiết bị chạy Android 9 trở lên. Thiết bị này cũng hỗ trợ giàn đỡ ống kính tele có thể gắn vào để kiểm thử camera tele có khoảng cách lấy tiêu điểm tối thiểu dài hơn. Về chức năng, giàn đế dạng mô-đun giống hệt như ITS-in-a-box WFoV nhưng có kích thước nhỏ hơn.

    Hộp kết hợp cảm biến kiểm tra độ lệch thời gian của camera/con quay hồi chuyển và hệ thống nhiều camera đồng bộ hoá khung hình bằng các kiểm thử trong scenes=sensor_fusion. Cần có độ lệch thời gian của camera/con quay hồi chuyển nhỏ hơn 1 mili giây cho cờ tính năng REALTIME.

    Bạn có thể kiểm thử các thiết bị có nhiều camera bằng một giàn duy nhất cho các kiểm thử ITS tĩnh và một giàn hợp nhất cảm biến nếu camera có cờ tính năng REALTIME.

    Một tập hợp các cấu hình mẫu được cung cấp trong bảng bên dưới.

    Khoảng cách lấy nét tối thiểu Trường nhìn của camera REALTIME? Giàn khoan được đề xuất Ghi chú
    31 cm – 22 cm 24° Không Đế mô-đun, WFoV hoặc RFoV Android 7.0 trở lên
    31 cm – 22 cm 24° Đế mô-đun, WFoV hoặc RFoV và tính năng kết hợp cảm biến Android 9 trở lên
    22 cm trở xuống 75° + 95° Đế mô-đun hoặc WFoV và tính năng kết hợp cảm biến Android 9 trở lên
    110 cm – 22 cm 75° + 95° + 20° Đế mô-đun, ống kính tele và tính năng kết hợp cảm biến Android 9 trở lên
    110 cm – 22 cm 75° + 95° + 20° Chân đế dạng mô-đun, ống kính tele, tính năng kết hợp cảm biến và giàn đỡ thế hệ thứ 2
    22 cm trở xuống Máy tính bảng 75° + 95° Không WFoV Android 9 trở lên

    Câu hỏi 2: Làm cách nào để chỉ định giàn thử nghiệm đang được sử dụng?

    Để chỉ định giàn thử nghiệm chính xác, hãy đảm bảo rằng thông số khoảng cách trên biểu đồ là chính xác. Giàn thử nghiệm rev1 (RFoV) có khoảng cách biểu đồ là 31 cm và giàn thử nghiệm rev2 (WFoV) có khoảng cách biểu đồ là 22 cm. Theo mặc định, khoảng cách của biểu đồ được đặt thành 31 cm.

    Android 10 sang Android 11

    Để xác định giàn thử nghiệm phù hợp trong Android 10 đến 11, hãy thêm cờ dist vào dòng lệnh. Giá trị mặc định của dist31. Chạy lệnh sau để thay đổi tham số chart_distance.
    python tools/run_all_tests.py ... chart=# dist=22
    

    Android 12 trở lên

    Để xác định giàn thử nghiệm phù hợp trong Android 12 trở lên, bạn có thể chỉnh sửa tệp config.yml để thay đổi tham số chart_distance.
    edit config.yml
    chart_distance: 31.0 → chart_distance: 22.0
    

    Câu hỏi 3: Làm cách nào để điều chỉnh độ sáng của máy tính bảng?

    Theo mặc định, độ sáng của máy tính bảng được đặt thành 96.

    Để thay đổi độ sáng trên máy tính bảng chạy Android 7.0 đến Android 9, hãy chạy:

    edit tools/wake_up_screen.py
    DISPLAY_LEVEL=96 → DISPLAY_LEVEL=192
    

    Để thay đổi độ sáng trên máy tính bảng chạy Android 10 đến 11, bạn có thể thay đổi giá trị này trên dòng lệnh bằng cách thêm cờ brightness:

    python tools/run_all_tests.py device=# camera=# chart=# brightness=192
    

    Để thay đổi độ sáng trên máy tính bảng chạy Android 12 trở lên, hãy chạy:

    edit config.yml
    brightness: 96 → brightness: 192
    

    Câu hỏi 4: Làm cách nào để gỡ lỗi một bài kiểm thử đơn lẻ?

    Bạn có thể chạy từng thử nghiệm riêng lẻ cho mục đích gỡ lỗi, nhưng kết quả sẽ không được báo cáo cho CtsVerifier.apk trừ phi bạn chạy toàn bộ cảnh.

    Cách chạy một cảnh riêng lẻ trong Android 11 trở xuống:

    1. Tải một cảnh bằng cách thêm cờ scenes vào tools/run_all_tests.py:
      python tools/run_all_tests.py device=# camera=# chart=# scenes=#
      
    2. Nhấn tổ hợp phím Control+C để tạm dừng các bài kiểm thử sau khi cảnh được ghi lại là đã tải vào stdout.

      Nếu cảnh bạn muốn đã xuất hiện trên màn hình, hãy đánh thức màn hình:

      python tools/wake_up_screen.py screen=#
      
    3. Chạy một bài kiểm thử riêng lẻ.

      python tests/scene#/test_*.py device=# camera=#

      Sau đó, các biểu đồ sẽ được tạo trong thư mục cục bộ và stdout cũng như stderr sẽ được in lên màn hình.

      Để biết thêm thông tin gỡ lỗi, hãy thêm các câu lệnh print vào tập lệnh. Để tăng đầu ra kiểm thử cho quá trình gỡ lỗi, hãy thêm cờ debug=True.

      python tests/scene#/test_*.py device=# camera=# debug=True

    Kết quả được in ra màn hình cục bộ và hình ảnh được lưu trong thư mục cục bộ thay vì thư mục /tmp/tmp### được tạo khi chạy tools/run_all_tests.py.

    Cách chạy một cảnh riêng lẻ trong Android 12 trở lên:

    1. Chỉnh sửa tệp config.yml.

      edit config.yml
      camera: <camera-id> → camera:  0
      scene: <scene-name> → scene: scene1_1
    2. Chạy từng kiểm thử.

      python tools/run_all_tests.py -c config.yml --test_bed TEST_BED_TABLET_SCENES
      

    Kết quả được in trong thư mục /tmp/logs/mobly/TEST_BED_TABLET_SCENES/ được sắp xếp theo thời gian chạy.

    Câu hỏi 5: Tại sao tôi cần chạy các bài kiểm thử không thành công dưới dạng một cảnh hoàn chỉnh thay vì chạy lại từng bài kiểm thử riêng lẻ?

    Bạn có thể chạy từng kiểm thử riêng lẻ cho mục đích gỡ lỗi, nhưng kết quả sẽ không được báo cáo cho CtsVerifier.apk trừ phi bạn chạy toàn bộ cảnh.

    Camera ITS đảm bảo rằng các ứng dụng bên thứ ba có giao diện camera tương thích. Tương tự như kiểm thử đơn vị, mỗi kiểm thử nhấn mạnh một thông số kỹ thuật duy nhất trong máy ảnh. Để phát hiện hành vi không đáng tin cậy, các kiểm thử này dự kiến sẽ vượt qua dưới dạng một nhóm cho toàn bộ cảnh. Ví dụ: mặc dù một kiểm thử đơn lẻ không đáng tin cậy có thể vượt qua một lần chạy lại toàn bộ cảnh, nhưng nhiều kiểm thử không đáng tin cậy khó có thể vượt qua.

    Ví dụ: hãy xem xét trường hợp có 10 bài kiểm thử trong một cảnh, mỗi bài có 50% xác suất trả về PASS. Bằng cách chạy từng thử nghiệm riêng lẻ, có nhiều khả năng một người vận hành có thể khiến camera vượt qua Camera ITS. Tuy nhiên, nếu các kiểm thử được chạy tổng hợp dưới dạng một cảnh, thì chỉ có 0,1% khả năng cảnh đó sẽ đạt.

    Câu hỏi 6: Làm cách nào để chạy một cảnh hoặc sắp xếp lại các cảnh cần chạy?

    Theo mặc định, tập lệnh tools/run_all_tests.py sẽ chạy tất cả các cảnh theo thứ tự. Tuy nhiên, các cảnh có thể chạy riêng lẻ hoặc theo một thứ tự cụ thể và được báo cáo cho CtsVerifier.apk.

    Cách chạy một cảnh riêng lẻ (ví dụ: cảnh 2) hoặc chạy nhiều cảnh theo một thứ tự cụ thể trong Android 11 trở xuống:

    python tools/run_all_tests.py device=# camera=# chart=# scenes=2
    
    python tools/run_all_tests.py device=# camera=# chart=# scenes=3,2
    

    Cách chạy một cảnh riêng lẻ hoặc chạy nhiều cảnh theo một thứ tự cụ thể trong Android 12 trở lên:

    python tools/run_all_tests.py scenes=2
    
    python tools/run_all_tests.py scenes=3,2
    

    Các tham số bổ sung được đặt trong tệp config.yml.

    Câu 7: Một số bài kiểm tra cảnh 1 không thành công khi thiết lập máy tính bảng nhưng lại thành công với biểu đồ trên giấy. Đã xảy ra sự cố gì?

    Đảm bảo rằng máy tính bảng và môi trường kiểm thử đáp ứng các thông số kỹ thuật sau.

    Thông số kỹ thuật của máy tính bảng

    Đảm bảo rằng máy tính bảng đáp ứng các thông số kỹ thuật sau:

    • Kích thước màn hình (inch): 10 inch
    • Kích thước màn hình (pixel): lớn hơn 1920 x 1200 pixel

    Để biết thêm thông tin, hãy xem Yêu cầu đối với máy tính bảng.

    Độ sáng máy tính bảng

    Các kiểm thử có thể không thu được kết quả chính xác nếu độ sáng màn hình máy tính bảng quá thấp.

    Để biết thêm thông tin chi tiết, hãy xem bài viết Làm cách nào để điều chỉnh độ sáng của máy tính bảng?

    Mức độ chiếu sáng của hộp (cần có đồng hồ đo độ rọi)

    Đảm bảo giá trị lux mục tiêu khi mở máy tính bảng nằm trong khoảng từ 100 đến 300.

    Nếu mức độ lux quá cao, scene1/test_param_flash_mode.py sẽ trả về FAIL. Nếu mức độ lux quá thấp, nhiều kiểm thử sẽ không thành công.

    Câu hỏi 8: Làm cách nào để gỡ lỗi các bài kiểm thử kết hợp cảm biến?

    1. Đảm bảo rằng bạn đang ở trong một nhóm dialout.

      groups | egrep ‘dialout'
    2. Đảm bảo bộ điều khiển hợp nhất cảm biến đã được kết nối bằng cách xác định xem Microchip Technology có được kết nối với cổng USB hay không.

      lsusb
      …
      Bus 003 Device 004: ID 04d8:fc73 Microchip Technology, Inc.
      …
      
    3. Chạy thử nghiệm nhiều lần để nhận được bản phân phối các lần thử nghiệm bằng các lệnh sau.

      Trên Android 11 trở xuống:

      python tools/run_sensor_fusion_box.py device=A camera=0 num_runs=10 rotator=default
      

      Trên Android 12 trở lên:

      python tools/run_sensor_fusion_box.py num_runs=10
      

      Các tham số bổ sung được đặt trong tệp config.yml.

      Đầu ra chạy nằm trong thư mục /tmp/tmp### được tạo trong thư mục sensor_fusion_#, trong đó # là số lần chạy. Sau đây là một số lý do phổ biến dẫn đến lỗi:

      1. Điện thoại chưa được đặt đúng vị trí.
      2. Không tìm thấy đủ các đặc điểm trong hình ảnh (thường là vấn đề về trường nhìn hoặc ánh sáng).
      3. FAIL được trả về là hợp lệ và độ lệch thời gian giữa camera và con quay hồi chuyển phải được điều chỉnh.

    Câu hỏi 9: Tôi nên cung cấp thông tin gì khi báo cáo lỗi trong quá trình kiểm thử?

    Khi báo cáo lỗi kiểm thử, hãy cung cấp các tệp và hình ảnh đã tạo cho kiểm thử.

    1. Nếu bạn chạy thử nghiệm thông qua tools/run_all_tests.py, hãy đính kèm một thư mục /tmp/ được nén vào lỗi.
    2. Nếu bạn chạy riêng thử nghiệm, hãy đính kèm tất cả đầu ra màn hình và hình ảnh đã tạo vào lỗi.

    Đồng thời, hãy gửi kèm báo cáo lỗi. Sau khi kiểm thử không thành công, hãy dùng lệnh sau để tạo báo cáo lỗi và đính kèm tệp ZIP đã tạo vào lỗi.

    adb -s device_id bugreport
    

    Câu hỏi 10: Làm cách nào để chạy một cảnh kiểm thử sensor_fusion bằng một camera có khoảng cách lấy tiêu điểm tối thiểu tạo ra hình ảnh bị mờ ở khoảng cách biểu đồ 25 cm?

    Nếu camera không thể lấy nét ở khoảng cách 25 cm, hãy tháo bảng gắn biểu đồ của hộp hợp nhất cảm biến. Đặt biểu đồ ở khoảng cách mà DUT có thể lấy nét và thay đổi chart_distance trong config.yml thành khoảng cách đo được giữa DUT và biểu đồ. Hình 5 minh hoạ ví dụ về cách đo khoảng cách trên biểu đồ trong trường hợp này.

    sensor_fusion TELE testing example6
    Hình 5. Đo khoảng cách trên biểu đồ cho cảnh kiểm thử hợp nhất cảm biến
      edit config.yml
    chart_distance: 25 → chart_distance: DISTANCE_BETWEEN_DUT_AND_CHART
    

    Câu 11: Làm cách nào để chạy các cảnh kiểm thử trên máy tính bảng cho một camera có khoảng cách lấy tiêu điểm tối thiểu tạo ra hình ảnh bị mờ ở khoảng cách biểu đồ 31 cm?

    Nếu camera của bạn không thể tạo ra hình ảnh đủ sắc nét khi kiểm tra ở khoảng cách 31 cm (độ sâu của giàn thử nghiệm RFoV), hãy gắn camera trước giàn ở một khoảng cách để cảnh biểu đồ lấp đầy khoảng 60% trường nhìn (FoV) của camera bằng hình ảnh sắc nét hơn. Khoảng cách này có thể nhỏ hơn khoảng cách lấy tiêu điểm tối thiểu của camera. Để chart_distance trong config.yml ở độ cao 31 cm. Hệ số tỷ lệ biểu đồ trên máy tính bảng được xác định bằng FoV của camera như trong bảng sau:

    Góc nhìn của camera Hệ số tỷ lệ biểu đồ
    60 > FoV > 40 0,67x
    40 > FoV > 25 0,5x
    FoV < 25 0,33x

    Câu hỏi 12: Với API nhiều camera logic, những kiểm thử nào được chạy trên những camera nào?

    Nếu camera của bạn dùng REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA, thì tất cả các kiểm thử ITS được hỗ trợ sẽ chạy trên camera logic cấp cao nhất. Một nhóm nhỏ các bài kiểm thử ITS được chạy trên các camera phụ thực tế và những bài kiểm thử này được liệt kê trong tools/run_all_tests.py trong hằng số SUB_CAMERA_TESTS.