В этом документе объясняется, как запускать тесты NFC для нескольких устройств.
Соответствовать предварительным требованиям
Перед запуском тестов NFC на нескольких устройствах выполните следующие действия:
- Подготовьте устройство с установленной на нем Android 15.
- Соблюдайте требования CTS-V.
- Следуйте инструкциям по настройке CTS-V.
Подготовьте тестируемое устройство и NFC-считыватель PN532 для проведения теста.
После выполнения предыдущих шагов выполните следующие действия для подготовки тестируемого устройства и NFC-считывателя PN532 к тестированию:
- Подключите тестируемое устройство к компьютеру через USB.
- Предоставьте хосту права доступа к тестируемому устройству через ADB.
Установите приложение CTS Verifier (
CtsVerifier.apk) на тестируемое устройство:extract root/out/host/linux-x86/cts-verifier/android-cts-verifier.zip cd android-cts-verifier adb install -r -g CtsVerifier.apkУстановите необходимые APK-файлы для тестирования NFC:
cd MultiDevice adb install -r -g NfcEmulatorTestApp.apk
Настройте NFC для тестируемого устройства.
Выполните следующие шаги для настройки NFC на тестируемом устройстве:
- На тестируемом устройстве перейдите в меню «Настройки» .
- Найдите раздел NFC или «Подключенные устройства» .
- Убедитесь, что переключатель NFC включен.
Разместите NFC-чип на NFC-считывателе телефона:
- Приобретите NFC-чип PN532. Мы рекомендуем универсальный чип PN532 без поддержки BLE.
- Подключите NFC-чип PN532 к хосту Linux с помощью USB-кабеля.
- Поместите NFC-чип PN532 на NFC-считыватель телефона, как показано на следующем изображении:

Рисунок 1. Размещение NFC-чипа.
Настройте тестовую среду.
Для настройки тестовой среды выполните следующие действия:
Выполните следующие команды для настройки тестовой среды:
cd MultiDevice source build/envsetup.shЭта команда проверяет Python и устанавливает переменную среды
PYTHONPATH. Если в терминале не выводится никаких ошибок, среда готова к запуску тестов на нескольких устройствах.Если во время выполнения вы видите сообщение об ошибке
libtinfo.so.6: no version information available (required by /bin/sh)at runtime, выполните следующую команду, чтобы переименовать файлlibtinfo.so.6:mv $ENV_DIRECTORY/lib/libtinfo.so.6 $ENV_DIRECTORY/lib/libtinfo.so.6.bakНастройте тестовый стенд, указав серийные идентификаторы тестируемого устройства и NFC-считывателя PN532 в
MultiDevice/config.yml:TestBeds: - Name: CtsNfcHceMultiDeviceTestCases-py-ctsv Controllers: AndroidDevice: - serial: "<device-id>" TestParams: pn532_serial_path: "<pn532-serial-path>"
Проведите тесты NFC
Для запуска тестов NFC:
Откройте приложение CTS-V и нажмите «Тесты NFC» :

Рисунок 2. Приложение CTS-V.
Появляется информационное окно со списком тестовых случаев:

Рисунок 3. Тестовые примеры приложения CTS-V.
Запустите тесты на вашем хосте:
MultiDevice$ python3 tools/run_all_tests.pyПосле завершения тестов результаты обновляются в приложении CTS-V. Успешно пройденные тесты отмечены зеленым цветом:

Рисунок 4. Результаты испытаний CTS-V.
Если вы видите ошибки, отмеченные красным цветом, используйте следующую команду для повторного запуска неудачных тестов:
python3 tools/run_all_tests.py --test_cases "`TestCaseA`" "`TestCaseB`" --test_files "`TestFileA`"Где:
-
TestCaseAиTestCaseB— это названия тестовых случаев, отображаемые в CTS-V. -
TestFileA— это файл с тестовыми примерами.
Например:
python3 tools/run_all_tests.py --test_cases "test_conflicting_non_payment" "test_conflicting_non_payment_prefix" --test_files "CtsNfcHceMultiDeviceTestCases-py-ctsv"-