На этой странице приведены инструкции по использованию тестов Better Together CTS Verifier (CTS-V) для Android 16 QPR2 или более поздних версий.
Настройте тестирование на нескольких устройствах на стороне хоста.
В этом разделе объясняется, как настроить тестирование на нескольких устройствах.
- Убедитесь, что ваш настольный компьютер соответствует системным требованиям CTS.
Выполните шаги 2 и 5 раздела «Установка программного обеспечения для настольных компьютеров» , чтобы установить и проверить правильность установки adb, AAPT2 и Python на вашем компьютере.
- Ваша версия Python должна быть 3.11 или выше. Чтобы определить версию Python, выполните команду
python3 --version. Если версия ниже 3.11, установите последнюю официальную версию Python. Для получения дополнительной информации см. раздел «Загрузки» на сайтеpython.org. - Для некоторых тестов требуется наличие модуля Python
venvна хост-системе. В системах Debian и Ubuntu этот модуль может быть не установлен по умолчанию. Чтобы определить, есть ли в вашей версии Python модульvenv, выполните командуpython3 -m venv venv. Если эта команда завершится неудачей, отобразится сообщение об ошибке. Следуйте подсказкам, чтобы установить пакетpython3.x-venv.
- Ваша версия Python должна быть 3.11 или выше. Чтобы определить версию Python, выполните команду
Подготовьте два одинаковых тестируемых устройства (DUT), на каждом из которых должна быть настроена система CTS-V.
- Для получения информации о настройке тестируемого устройства см. раздел «Настройка тестируемого устройства» .
- Инструкции по настройке CTS-V см. в разделе «Настройка» .
Перейдите в раздел настроек для вашего типа теста:
- Для проверки NFC перейдите в раздел «Настройка проверки NFC» .
- Для проверки подключения к точке доступа Wi-Fi перейдите в раздел «Настройка проверки подключения к точке доступа Wi-Fi» .
- Для тестирования модуля CDM перейдите в раздел «Настройка стандартных тестов с двумя устройствами» , а затем в раздел «Настройка тестов CDM» .
Если вашего теста нет в этом списке, перейдите к разделу «Настройка стандартных тестов с двумя устройствами».
Настройка тестов NFC
Для проведения NFC-тестов используется одно тестируемое устройство и один NFC-чип PN532.
Для настройки тестов NFC:
- Приобретите NFC-чип PN532. Мы рекомендуем универсальный чип PN532 .
На тестируемом устройстве перейдите в приложение «Настройки» .
Включить NFC .
Расположите NFC-чип:
Для телефонов расположите NFC-считыватель тестируемого устройства, как показано на рисунке 1:

Рисунок 1. Расположение NFC-чипа.
Для других типов устройств расположите чип рядом с NFC-антенной устройства.
Подключите NFC-чип PN532 к вашей тестовой рабочей станции с помощью USB-кабеля.
Дополнительно: Настройте проверку подключения к точкам доступа Wi-Fi.
Тесты подключения точки доступа Wi-Fi ( CtsWifiConnectionTests ) проверяют связь между тестируемым устройством и точкой доступа. Мы настоятельно рекомендуем запустить эти тесты, но они не являются обязательными в CTS-V Android 16 16 QPR2.
Для проведения этих тестов требуется тестируемое устройство (DUT) и точка доступа OpenWrt Banana Pi R3.
Для настройки проверки подключения к точкам доступа Wi-Fi:
Приобретите и настройте точку доступа Banana Pi R3. Для получения дополнительной информации см. раздел «Настройка точки доступа Banana Pi BPI-R3» .
Дополнительно: Если у вас нет защитного бокса, мы рекомендуем защитный бокс JTP-SR101. Приобретите этот бокс, используя следующую информацию:
Dong Guan Zheng Sheng Electronics Technology Co., LTD
Промышленный парк Бохуэй, улица Панлун, поселок Ляобу, город Дунгуань, провинция Гуандун, Китай.
Контактное лицо: Форест Пан
Электронная почта: forest.pan@jtpmak.cn
Телефон (Китай): +86 18676993556Подключите тестируемое устройство (DUT) и точку доступа (AP) к хосту и поместите их в экранированный от радиочастот корпус. Расстояние между DUT и AP должно составлять не менее 10 см. На рисунке 2 показана следующая конфигурация:

Рисунок 2. Исследуемое устройство (DUT) и точка доступа (AP) в экранированном корпусе.
Используйте SSH для проверки доступности точки доступа с хоста.
Настройте стандартные тесты с использованием двух устройств.
Для стандартной конфигурации с двумя устройствами:
- Разместите два одинаковых тестируемых устройства Android на расстоянии примерно 20 см друг от друга.
Для создания чистой среды поместите оба устройства в защитный бокс.
Дополнительно: Настройте анализатор беспроводного соединения (OTA sniffer) для отладки Wi-Fi.
Настройка тестов CDM
Поведение тестового случая test_permissions_sync() различается в зависимости от типа сборки устройств, на которых выполняется тест. Крайне важно, чтобы производители оборудования тестировали как отлаживаемые (userdebug или eng), так и неотлаживаемые (user) сборки, и чтобы тесты проходили успешно для обеих.
Освобождение от налогов
В соответствии с пунктом CDD для реализации API синхронизации разрешений требуется лишь возможность успешной передачи данных между устройствами по защищенному каналу. Поскольку реализация защищенного канала не является обязательным требованием CDD, этот тест можно пропустить в сборках, не предназначенных для отладки (пользовательских), но только если вы хотите отказаться от поддержки функции синхронизации разрешений CDM.
Тесты должны проходить без исключений на отлаживаемых сборках.
Предварительные условия для тестирования на сборках, не предназначенных для отладки.
Если на вас не распространяются предыдущие положения об освобождении от уплаты налогов, убедитесь, что вы соответствуете следующим предварительным условиям.
Защищенный канал использует AVF ( AttestationVerificationFramework ) для проверки надежности оборудования. Аттестации, сгенерированные обеими сторонами, содержат ряд сведений о них самих, чтобы гарантировать отсутствие несанкционированных изменений в их системе. В процессе проверки AVF проверяет следующие состояния:
- Устройство имеет доступ к интернету.
- Устройство использует проверенную загрузку, и сборка должна быть подписана ключом выпуска, а не ключом разработчика.
- Устройство заблокировано загрузчиком. Подробные инструкции см. в разделе «Блокировка загрузчика».
- Уровни обновлений ОС, загрузочного ключа и ключа от производителя должны быть в пределах 12 месяцев. Не используйте сборку старше года.
Подтверждение подлинности устройства осуществляется с помощью одного из корневых сертификатов, одобренных поставщиком. Укажите ваши доверенные корневые сертификаты в ресурсе
vendor_required_attestation_certificates.xml.
Выполните многоустройственные тесты на стороне хоста (AOSP 16 или более поздняя версия).
В CTS Verifier 16 добавлена поддержка тестирования нескольких устройств на стороне хоста. Эти тесты можно выполнять с помощью автоматизированных скриптов на хосте, вместо ручного тестирования на устройстве. После завершения каждого теста результаты автоматически загружаются в тестируемое устройство и отображаются в приложении CTS Verifier.
В этом разделе объясняется, как запустить многоустройственные тесты на стороне хоста.
Запуск тестов на нескольких устройствах
Для проведения теста на нескольких устройствах:
На тестовой рабочей станции запустите консоль
cts-v-hostиз каталога, куда был распакован ZIP-архив CTS-V:./android-cts-verifier/android-cts-v-host/tools/cts-v-host-tradefedВ приложении CTS Verifier на тестируемом устройстве нажмите «Тесты на стороне хоста» . На рисунке 3 показаны тесты на стороне хоста в приложении CTS Verifier:

Рисунок 3. Тестирование нескольких устройств на стороне хоста в приложении CTS Verifier.
Отображается список тестовых модулей для тестирования нескольких устройств на стороне хоста.
Укажите название тестового модуля, который вы хотите запустить. Например, модуль CompanionDeviceManager указан как CtsCompanionDeviceManagerMultiDeviceTestCases .
В консоли cts-v-host выполните следующую команду:
run cts-v-host -m test_module_nameНапример:
run cts-v-host -m CtsCompanionDeviceManagerMultiDeviceTestCasesПосле завершения выполнения тестов в консоли xTS результаты отображаются в приложении CTS Verifier. Тесты, отмеченные зеленым цветом, пройдены успешно. Тесты, отмеченные красным, не пройдены. На рисунке 4 показаны примеры результатов тестов CtsCompanionDeviceManager:

Рисунок 4. Результаты тестирования на нескольких устройствах на стороне хоста в приложении CTS Verifier.
Дополнительно: выполните проверку подключения к точке доступа Wi-Fi.
Выполните следующие действия, чтобы проверить подключение к точке доступа Wi-Fi:
Отредактируйте файл конфигурации тестовой среды (
WifiConnectionTestbed.yaml). Этот файл находится в каталоге, куда распакован CTS-Verifier:./android-cts-verifier/android-cts-v-host/testcases/CtsWifiConnectionTests/x86_64/connection/WifiConnectionTestbed.yamlИзмените значение поля
hostnameна IP-адрес точки доступа в соответствии с вашими локальными настройками SSH. Чтобы определить IP-адрес, см. раздел «Как найти IP-адрес точки доступа» .В следующем примере показано расположение поля
hostnameв файлеWifiConnectionTestbed.yaml:TestBeds: - Name: WifiConnectionTestbed Controllers: # Specify settings for the AP. OpenWrtDevice: - hostname: AP-IP skip_init_reboot: TrueВ консоли cts-v-host выполните следующую команду:
run everything -m CtsWifiConnectionTests
Устранение неполадок при тестировании нескольких устройств
В этом разделе представлена помощь в устранении возможных неполадок.
Исправлена ошибка, из-за которой при тестировании NFC не получался ответ на запрос GetFirmwareVersion.
Если при выполнении тестов на нескольких устройствах вы получаете сообщение verify_firmware_version RuntimeError: No response for GetFirmwareVersion , это означает, что тесты не могут получить доступ к плате PN532 NFC.
Для решения этой проблемы определите путь к последовательному порту, используемый платой PN532 NFC на вашем компьютере, например, dev/ttyUSB1 , а затем укажите его вручную с помощью аргумента --module-arg в консоли:
run cts-v-host -m CtsNfcHceMultiDeviceTestCases --module-arg CtsNfcHceMultiDeviceTestCases:pn532_serial_path:/dev/ttyUSB1
Исправление ошибки "Транзакция не удалась" во время тестирования NFC.
Если вы получили сообщение « Transaction failed, check device logs for more information. для всех тестовых случаев NFC, это, вероятно, связано с тем, что NFC-чип тестируемого устройства не может обнаружить PN532.
Если к хосту подключено несколько устройств, и на некоторых из них отсутствует датчик PN532, возможно, был выбран не тот тестируемый объект. Для получения дополнительной информации см. раздел «Настройка NFC-тестов» .
Для решения этой проблемы выполните одно из следующих действий:
Укажите правильный последовательный порт тестируемого устройства (DUT) в команде тестирования на стороне хоста, используя флаг
-s.Отключите от хоста все устройства, кроме тестируемых.
В тестовом случае CDM test_permissions_sync игнорируется.
Если тестирование проводится на устройствах, не подлежащих отладке, проверьте, не освобождены ли вы от этого требования. В противном случае убедитесь, что оба устройства соответствуют предварительным условиям .