Для проверки и отладки стека Bluetooth используйте инструменты, предоставленные в тестах AOSP и Bluetooth Special Interest Group (SIG).
Тестирование и проверка
Для тестирования стека Bluetooth AOSP предоставляет набор модульных тестов, тестов CTS и инструментов для пакета Bluetooth Profile Tuning Suite.
Модульные тесты в AOSP
AOSP включает функциональные и модульные тесты для стандартного стека Bluetooth. Эти тесты находятся в /packages/modules/Bluetooth/system/test/
. Чтобы запустить тесты AOSP, сделайте следующее:
- Остановите среду выполнения Android:
adb shell stop
. - Из тестового каталога запустите исполняемый файл оболочки и включите параметры, если вы хотите запустить определенный тест или набор тестов:
./run_unit_tests.sh TEST_GROUP_NAME TEST_NAME OPTIONS
- Когда тесты закончатся, снова включите среду выполнения Android:
adb shell start
Список имен тестов можно найти в файле /packages/modules/Bluetooth/system/test/run_unit_tests.sh
.
Тестовый набор Android Comms
Android Comms Test Suite (ACTS) выполняет автоматизированное тестирование стеков подключения, таких как Wi-Fi, Bluetooth и услуги сотовой связи. Инструмент тестирования требует adb и python, и его можно найти в tools/test/connectivity/acts
.
Тесты ACTS для Bluetooth и Bluetooth Low Energy находятся в tools/test/connectivity/acts_tests/tests/google/bt/
и tools/test/connectivity/acts_tests/tests/google/ble/
соответственно.
Набор для настройки профиля
Bluetooth SIG предоставляет Bluetooth Profile Tuning Suite (PTS), инструмент для тестирования совместимости протоколов и профилей. Дополнительные сведения см. на сайте пакета настройки профиля Bluetooth .
AOSP предоставляет дополнительные инструменты для дополнения Bluetooth PTS. Эти инструменты находятся в tools/test/connectivity/acts_tests/tests/google/bt/pts/
.
CTS-тесты
Набор тестов совместимости (CTS) включает тесты для стека Bluetooth. Они расположены в cts/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth
.
Параметры отладки
AOSP предоставляет различные методы отладки стека Bluetooth устройства, включая журналы и отчеты об ошибках. Эти методы могут не работать для проблем, которые невозможно воспроизвести, или для проблем со звуком, на которые могут влиять несколько частей платформы и устройства.
Отладка с помощью отчетов об ошибках
Чтобы проверить статус службы Bluetooth с помощью dumpsys
, используйте следующую команду:
adb shell dumpsys bluetooth_manager
По умолчанию все сообщения журнала имеют уровень трассировки 2. Чтобы узнать больше об уровнях ведения журнала и изменить уровни ведения журнала для разных профилей, загляните в system/bt/conf/bt_stack.conf
.
Чтобы извлечь журналы отслеживания из отчета об ошибке, используйте скрипт btsnooz
.
- Получить
btsnooz.py
. - Извлеките текстовую версию отчета об ошибке.
- Запустите
btsnooz.py
в текстовой версии отчета об ошибке:btsnooz.py BUG_REPORT.txt > BTSNOOP.log
Отладка с помощью журналов
В Android 4.4 и более поздних версиях вы можете вручную собирать журналы BTSnoop, которые напоминают формат отслеживания в RFC 1761. Эти журналы фиксируют пакеты интерфейса хост-контроллера (HCI). Для большинства Android-устройств журналы хранятся в data/misc/bluetooth/logs
.
Из соображений конфиденциальности постоянно включенный «в памяти» BTSnoop регистрирует только неличную информацию и события. Чтобы регистрировать все данные, пользователю необходимо включить отслеживание Bluetooth HCI, выполнив следующие действия:
- Включите параметры разработчика на устройстве.
- В меню «Параметры разработчика » активируйте переключатель « Включить протокол Bluetooth HCI snoop» .
- Перезапустите Bluetooth, чтобы регистрация вступила в силу.
Для проверки и отладки стека Bluetooth используйте инструменты, предоставленные в тестах AOSP и Bluetooth Special Interest Group (SIG).
Тестирование и проверка
Для тестирования стека Bluetooth AOSP предоставляет набор модульных тестов, тестов CTS и инструментов для пакета Bluetooth Profile Tuning Suite.
Модульные тесты в AOSP
AOSP включает функциональные и модульные тесты для стандартного стека Bluetooth. Эти тесты находятся в /packages/modules/Bluetooth/system/test/
. Чтобы запустить тесты AOSP, сделайте следующее:
- Остановите среду выполнения Android:
adb shell stop
. - Из тестового каталога запустите исполняемый файл оболочки и включите параметры, если вы хотите запустить определенный тест или набор тестов:
./run_unit_tests.sh TEST_GROUP_NAME TEST_NAME OPTIONS
- Когда тесты закончатся, снова включите среду выполнения Android:
adb shell start
Список имен тестов можно найти в файле /packages/modules/Bluetooth/system/test/run_unit_tests.sh
.
Тестовый набор Android Comms
Android Comms Test Suite (ACTS) выполняет автоматизированное тестирование стеков подключения, таких как Wi-Fi, Bluetooth и услуги сотовой связи. Инструмент тестирования требует adb и python, и его можно найти в tools/test/connectivity/acts
.
Тесты ACTS для Bluetooth и Bluetooth Low Energy находятся в tools/test/connectivity/acts_tests/tests/google/bt/
и tools/test/connectivity/acts_tests/tests/google/ble/
соответственно.
Набор для настройки профиля
Bluetooth SIG предоставляет Bluetooth Profile Tuning Suite (PTS), инструмент для тестирования совместимости протоколов и профилей. Дополнительные сведения см. на сайте пакета настройки профиля Bluetooth .
AOSP предоставляет дополнительные инструменты для дополнения Bluetooth PTS. Эти инструменты находятся в tools/test/connectivity/acts_tests/tests/google/bt/pts/
.
CTS-тесты
Набор тестов совместимости (CTS) включает тесты для стека Bluetooth. Они расположены в cts/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth
.
Параметры отладки
AOSP предоставляет различные методы отладки стека Bluetooth устройства, включая журналы и отчеты об ошибках. Эти методы могут не работать для проблем, которые невозможно воспроизвести, или для проблем со звуком, на которые могут влиять несколько частей платформы и устройства.
Отладка с помощью отчетов об ошибках
Чтобы проверить статус службы Bluetooth с помощью dumpsys
, используйте следующую команду:
adb shell dumpsys bluetooth_manager
По умолчанию все сообщения журнала имеют уровень трассировки 2. Чтобы узнать больше об уровнях ведения журнала и изменить уровни ведения журнала для разных профилей, загляните в system/bt/conf/bt_stack.conf
.
Чтобы извлечь журналы отслеживания из отчета об ошибке, используйте скрипт btsnooz
.
- Получить
btsnooz.py
. - Извлеките текстовую версию отчета об ошибке.
- Запустите
btsnooz.py
в текстовой версии отчета об ошибке:btsnooz.py BUG_REPORT.txt > BTSNOOP.log
Отладка с помощью журналов
В Android 4.4 и более поздних версиях вы можете вручную собирать журналы BTSnoop, которые напоминают формат отслеживания в RFC 1761. Эти журналы фиксируют пакеты интерфейса хост-контроллера (HCI). Для большинства Android-устройств журналы хранятся в data/misc/bluetooth/logs
.
Из соображений конфиденциальности постоянно включенный «в памяти» BTSnoop регистрирует только неличную информацию и события. Чтобы регистрировать все данные, пользователю необходимо включить отслеживание Bluetooth HCI, выполнив следующие действия:
- Включите параметры разработчика на устройстве.
- В меню «Параметры разработчика » активируйте переключатель « Включить протокол Bluetooth HCI snoop» .
- Перезапустите Bluetooth, чтобы регистрация вступила в силу.