В этом документе объясняется, как запускать тесты NFC на нескольких устройствах.
Соответствовать предварительным требованиям
Прежде чем запускать тесты NFC на нескольких устройствах, выполните следующие действия:
- Подготовьте устройство с вашей версией Android 15.
- Соблюдайте требования CTS-V.
- Следуйте настройке CTS-V.
Подготовьте тестируемое устройство и считыватель NFC PN532 к тесту.
После завершения предыдущих шагов выполните следующие действия, чтобы подготовить тестируемое устройство и считыватель NFC PN532 к тесту:
- Подключите тестируемое устройство к хост-машине через USB.
- Предоставьте хосту разрешения на доступ к DUT через ADB.
Установите приложение CTS Verifier (
CtsVerifier.apk
) на DUT: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)
во время выполнения, выполните следующую команду, чтобы переименовать файлlibtinfo.so.6
:mv $ENV_DIRECTORY/lib/libtinfo.so.6 $ENV_DIRECTORY/lib/libtinfo.so.6.bak
Настройте испытательный стенд, задав серийные идентификаторы устройств DUT и считывателя 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"
-