Использование CTS-верификатора

Средство проверки набора тестов совместимости Android (CTS Verifier) ​​дополняет набор тестов совместимости (CTS). В то время как CTS проверяет API и функции, которые можно автоматизировать, CTS Verifier предоставляет тесты для API и функций, которые невозможно протестировать на стационарном устройстве без ручного ввода, таких как качество звука, сенсорный экран, акселерометр и камера.

Требования

Перед запуском CTS Verifier убедитесь, что у вас есть следующее оборудование:

  • Android-устройство, которое подтвердило совместимость с Android API, успешно пройдя CTS. Это тестируемое устройство (DUT).
  • Компьютер Linux с портом, совместимым с USB 2.0. Все подключения к тестируемому устройству проходят через этот порт.
  • Второе устройство Android с заведомо совместимой реализацией Bluetooth, Wi-Fi direct и эмуляции хост-карты NFC (HCE).
  • Маршрутизатор Wi-Fi, настроенный с именем точки доступа и паролем. Маршрутизатор должен иметь возможность отключаться от Интернета, но не выключаться.

Требования UICC для тестов NFC

CTS Verifier имеет следующие тестовые примеры NFC:

  • Field-off (использует данные транзакции из 0x54)
  • Отменить выбор (использует данные транзакции из 0x52)
  • Команда HCI (0025000000) (использует данные транзакции из 0x02)

Для тестов транзакционных событий требуется два устройства, одно из которых должно иметь SecureElement UICC со следующими правилами доступа:

  • Хеш APK CtsVerifier: 61:ED:37:7E:85:D3:86:A8:DF:EE:6B:86:4B:D8:5B:0B:FA:A5:AF:81
  • Авторизованный идентификатор приложения (AID) для доступа к событию NFC: 0xA000000476416E64726F696443545341

Со стороны эмулятора мы ожидаем, что событие транзакции выдвинет соответствующую активность на передний план.

Настройка

Измените режим системной навигации тестового устройства на трехкнопочный режим следующим образом:

  1. Открыть настройки.
  2. Перейдите к Система > Жест > Системная навигация .
  3. Выберите любой кнопочный режим навигации, предпочтительнее трехкнопочный режим, если он доступен.

Чтобы настроить среду тестирования CTS Verifier:

  1. На компьютере с Linux:

    • Выполните следующую команду перед установкой CTS Verifier, чтобы разрешить доступ к интерфейсам, не относящимся к SDK.

      adb shell settings put global hidden_api_policy 1
      
    • Установите Android-студию .

    • Загрузите APK CTS Verifier для версии Android для тестирования.

  2. Подключите DUT к компьютеру Linux.

  3. С терминала на компьютере Linux установите CtsVerifier.apk на DUT.

    adb install -r -g CtsVerifier.apk
    
  4. Для Android 10 и более поздних версий выполните следующую команду, чтобы дать приложению разрешение на создание отчета.

    adb shell appops set com.android.cts.verifier android:read_device_identifiers allow
    
  5. Для Android 11 и более поздних версий выполните следующую команду, чтобы разрешить сохранение отчетов в самостоятельно определенном каталоге во внешнем каталоге верхнего уровня устройства.

    adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0
    
  6. Убедитесь, что на ИУ правильно установлены системные данные и время.

Бег

Запустите приложение CTS Verifier, коснувшись значка CTS Verifier на тестируемом устройстве.

Значок CTS Verifier в лаунчере

Рис. 1. Значок CTS Verifier

Приложение отображает несколько наборов тестов, доступных для ручной проверки.

Меню тестов CTS Verifier

Рисунок 2. Меню тестов CTS Verifier

Каждый тест содержит набор общих элементов (Info, Pass, Fail) в нижней части экрана.

Проверка качества потокового видео

Рисунок 3. Тестовые элементы

  • Информация (?). Коснитесь, чтобы отобразить инструкции по тестированию. Также появляется автоматически при первом открытии теста.
  • Пройти (✓). Нажмите, если тестируемое устройство соответствует требованиям к тесту в соответствии с информационными инструкциями.
  • Неудача (!). Нажмите, если тестируемое устройство не соответствует требованиям к тесту в соответствии с информационными инструкциями.

Некоторые тесты, такие как режим USB-аксессуара и тест калибровки камеры, требуют дополнительной настройки теста и инструкций, как подробно описано в следующих разделах.

Тестирование режима USB-аксессуара для версии 8.0 и выше

Тест USB-аксессуаров CTS Verifier

Рис. 4. Процедура тестирования аксессуаров USB для версии 8.0 и выше

Тест USB-аксессуаров CTS Verifier

Рис. 5. Тестирование режима USB-аксессуара для версии 8.0 и выше

Тестирование режима аксессуара USB для 7.x и ниже

Для теста USB Accessory требуется компьютер Linux для запуска программы USB настольного компьютера (хоста).

  1. Подключите DUT к компьютеру Linux.
  2. На компьютере запустите программу cts-usb-accessory из пакета CTS Verifier:

    ./cts-usb-accessory
  3. Дождитесь появления всплывающего сообщения на тестируемом устройстве, затем выберите OK .
    Тест USB-аксессуаров CTS Verifier

    Рис. 6. Тест USB-аксессуара

  4. Перейдите к тесту USB-аксессуаров в приложении CTS Verifier на тестируемом устройстве.

  5. На компьютере просмотрите вывод консоли. Пример вывода:

    CTS USB Accessory Tester
    Found possible Android device (413c:2106) - attempting to switch to accessory
    mode...
    Failed to read protocol versionfigure3
    Found Android device in accessory mode (18d1:2d01)...
    [RECV] Message from Android device #0
    [SENT] Message from Android accessory #0
    [RECV] Message from Android device #1
    [SENT] Message from Android accessory #1
    [RECV] Message from Android device #2
    [SENT] Message from Android accessory #2
    [RECV] Message from Android device #3
    [SENT] Message from Android accessory #3
    [RECV] Message from Android device #4
    [SENT] Message from Android accessory #4
    [RECV] Message from Android device #5
    [SENT] Message from Android accessory #5
    [RECV] Message from Android device #6
    [SENT] Message from Android accessory #6
    [RECV] Message from Android device #7
    [SENT] Message from Android accessory #7
    [RECV] Message from Android device #8
    [SENT] Message from Android accessory #8
    [RECV] Message from Android device #9
    [SENT] Message from Android accessory #9
    [RECV] Message from Android device #10
    [SENT] Message from Android accessory #10
    

Калибровка поля зрения камеры

Используйте процедуру калибровки поля зрения, чтобы быстро определить поле зрения устройства с умеренной точностью.

  1. Настройте тестовую среду:

    1. Распечатайте целевой файл калибровочного шаблона.pdf на бумаге размером 11 x 17 дюймов или A3.
    2. Закрепите распечатанный шаблон на жесткой подложке.
    3. Сориентируйте камеру и напечатанную мишень, как показано ниже.
      Мишень, напечатанная камерой

      Рисунок 7. Мишень, напечатанная камерой

  2. Установите целевую ширину:

    1. Измерьте расстояние (в сантиметрах) между сплошными линиями на целевом шаблоне, чтобы учесть неточности печати (~ 38 см).
    2. Запустите приложение калибровки.
    3. Нажмите кнопку настройки и выберите Расстояние до маркера .
    4. Измерьте и введите расстояние до мишени (~100 см).
    5. Нажмите кнопку «Назад», чтобы вернуться к предварительному просмотру калибровки.
  3. Убедитесь, что устройство и цель размещены, как показано на рисунке, а в диалоговом окне настройки введены правильные расстояния. Предварительный просмотр отображает изображение с наложенной на него вертикальной линией; эта линия должна совпадать с центральной линией целевого шаблона. Прозрачную сетку можно использовать с другими вертикальными линиями, чтобы гарантировать, что оптическая ось ортогональна цели.

  4. Запустите калибровочный тест:

    1. Выберите разрешение изображения (используя селектор в левом нижнем углу), затем коснитесь экрана, чтобы сделать снимок. Тест входит в режим калибровки и отображает фотографию с двумя вертикальными линиями, наложенными на изображение.
    2. Определить точность:
      • Если линии совпадают с вертикальными линиями на целевом образце с точностью до нескольких сантиметров, сообщаемое поле зрения для выбранного результата является точным.
      • Если линии не совпадают, сообщаемое поле зрения является неточным. Чтобы исправить это, отрегулируйте ползунок в нижней части экрана, пока наложение не совпадет с целевым шаблоном как можно ближе. Когда наложение и изображение целевого шаблона совмещены, отображаемое поле зрения является близким приближением к правильному значению. Сообщаемое поле зрения должно быть в пределах +/-2 градуса от значения калибровки.
    3. Нажмите кнопку «Назад» и повторите калибровочный тест для всех разрешений изображения, поддерживаемых тестируемым устройством.

Запуск CTS Verifier для альтернативных режимов

Начиная с выпусков CTS 10 R6 и CTS 11 R2, CTS Verifier поддерживает тесты, необходимые для устройств с альтернативными режимами или для устройств с более чем одним режимом экрана.

В верхней части основного представления списка в CTS Verifier отображается кнопка, позволяющая пользователям переключаться между развернутым и свернутым режимами отображения. CTS Verifier покажет необходимые тесты для выбранного режима отображения. Для запуска альтернативных режимов в CTS Verifier необходимо переключить кнопку в соответствующий режим отображения и запустить отображаемый список тестов.

Тумблер CTS-V

Результаты свернутых тестов будут занесены в тот же отчет, что и развернутые тесты. Чтобы идентифицировать каждый результат теста, из которого получен набор тестов, к каждому имени теста в свернутом режиме добавляется суффикс.

<Test result="fail" name="com.android.cts.verifier.deskclock.DeskClockTestsActivity[folded]">
  <RunHistory subtest="CREATE_ALARM[folded]">
    <Run start="1594176663973" end="1594176665841" isAutomated="false" />
  </RunHistory>
</Test>

Экспорт результатов

После завершения всех тестов вы можете сохранить результаты в виде отчета и загрузить их на компьютер. Имена отчетов автоматически получают отметку времени на основе системного времени тестируемого устройства.

  1. Коснитесь значка « Сохранить» (диск) .
    Значок сохранения CTS Verifier

    Рис. 8. Значок сохранения CTS Verifier

  2. Подождите, пока всплывающее сообщение не отобразит путь к сохраненному отчету (например, /sdcard/verifierReports/ctsVerifierReport-date-time.zip ), затем запишите путь.
    Путь CTS Verifier к сохраненному отчету

    Рисунок 9. Путь CTS Verifier к сохраненному отчету

  3. Подключите DUT к компьютеру Linux.

  4. Из установки Android SDK на компьютере Linux загрузите отчеты с подключенного устройства, используя adb shell content read adb или adb pull CTSVerifierReportPath .

    • Для Android 7.x и выше загрузите все отчеты, используя:

      adb pull /sdcard/verifierReports
      
    • Для Android 6.0 и более ранних версий загрузите все отчеты, используя:

      adb pull /mnt/sdcard/ctsVerifierReports/
      
    • Для Android 10 и более поздних версий, реализующих Automotive и устройства, работающие в качестве дополнительного пользователя , загрузите последний отчет, используя:

      adb shell content read --user CURRENT_USER --uri
      
      content://com.android.cts.verifier.testresultsprovider/reports/latest > report.zip
      

      Чтобы просмотреть все отчеты, доступные на подключенном устройстве:

      adb shell content query --user CURRENT_USER --uri
      
      content://com.android.cts.verifier.testresultsprovider/reports
      

      Чтобы загрузить отчет из списка, вы можете указать идентификатор строки или имя файла. Например:

      adb shell content read --user CURRENT_USER --uri
      
      content://com.android.cts.verifier.testresultsprovider/reports/0 > report.zip
      
      adb shell content read --user CURRENT_USER --uri
      
      content://com.android.cts.verifier.testresultsprovider/reports/ctsVerifierReport-date-time.zip >
      report.zip
      
  5. Чтобы очистить результаты «годен/не годен», выберите результаты в приложении CTS Verifier и выберите « Меню» > «Очистить» .