Для устройств под управлением Android 11 или более поздней версии Android Comms Test Suite (ACTS) поддерживает основные сценарии использования 5G NSA для сред с одним или несколькими устройствами. На этой странице описано, как ACTS обнаруживает и обеспечивает подключение устройства к сети 5G NSA, а также представлен обзор структуры тестового пути.
Обнаружение
Начиная с Android 11, платформа Android включает API для обнаружения 5G. Более подробную информацию см. в разделе Обнаружение 5G .
Уровень сценариев для Android (SL4A) поддерживает обнаружение 5G, прослушивая события LISTEN_DISPLAY_INFO_CHANGED
от PhoneStateListener
и переопределяя метод onDisplayInfoChanged()
. SL4A использует следующие значения, чтобы различать типы соединений NSA (неавтономное), mmWave (миллиметровые волны) и SA (автономное) для 5G:
Тип подключения | Ценности |
---|---|
5G АНБ | TelephonyManager.getDataNetworkType() = LTE |
5G ммволны | TelephonyDisplayInfo.getOverrideNetworkType() = NR_MMWAVE |
5G SA | TelephonyManager.getDataNetworkType() = NR |
Тесты ACTS используют метод is_current_network_5g_nsa()
, чтобы убедиться, что устройство подключено к сети 5G NSA.
Пути тестирования и структура тестирования
Все тесты телефонии (1400+) в ACTS являются частью каталога tel
. Тесты 5G расположены в tools/test/connectivity/acts\_tests/tests/google/nr/
(nr означает новое радио). С появлением технологии радиодоступа 5G (RAT) тесты 5G отделены от 4G, 3G, 2G и 1x для действующих сетевых сред, что позволяет тестам ACTS быть масштабируемыми и независимыми.
Ниже описаны тестовые классы для тестов 5G.
Nsa5gActivationTest
: проверяет, правильно ли одно устройство подключается к 5G NSA в различных состояниях.test_5g_nsa_activation_from_apm test_5g_nsa_activation_from_reboot test_5g_nsa_activation_from_3g
Nsa5gVoiceTest
: проверяет функциональность голосовых вызовов между несколькими устройствами.test_5g_nsa_call_volte_to_volte test_5g_nsa_call_volte_to_3g test_5g_nsa_call_volte_mo_hold_unhold test_5g_nsa_call_mo_volte_in_active_data_transfer test_5g_nsa_volte_in_call_wifi_toggling
Nsa5gDataTest
: проверяет функциональность данных, такую как просмотр, задержка данных и измерение.test_5g_nsa_data_browsing test_5g_nsa_data_stall_recovery test_5g_nsa_metered_cellular test_5g_nsa_metered_airplane test_5g_nsa_metered_wifi
Nsa5gSmsTest
: проверяет отправку и получение SMS-сообщений между несколькими устройствами.test_5g_nsa_sms_mo_mt test_5g_nsa_sms_mo_mt_volte test_5g_nsa_sms_mo_mt_in_call_volte test_5g_nsa_sms_mo_mt_iwlan test_5g_nsa_sms_mo_mt_in_call_iwlan
Nsa5gMmsTest
: проверяет отправку и получение MMS-сообщений между несколькими устройствами.test_5g_nsa_mms_mo_mt test_5g_nsa_mms_mo_mt_in_call_volte test_5g_nsa_mms_mo_mt_iwlan_apm_off test_5g_nsa_mms_mo_mt_in_call_iwlan test_5g_nsa_mms_mo_mt_in_call_volte_wifi
Nsa5gTetheringTest
: проверяет модем Wi-Fi на устройстве, подключенном к 5G NSA.test_5g_nsa_tethering_to_5gwifi test_5g_nsa_tethering_to_2gwifi
Пример результатов теста
Чтобы убедиться, что устройство находится в сети 5G NSA, проверьте следующие сообщения журнала в test_run_info.txt
.
INFO [AndroidDevice|<SERIAL_ID>] Current ModePref for Sub 2 is in
NETWORK_MODE_NR_LTE_GSM_WCDMA [tel_test_utils.py:set_preferred_network_mode_pref:7634]
INFO [AndroidDevice|<SERIAL_ID>] Got expected event {'name': 'DisplayInfoChanged',
'data': {'override': 'NR_NSA', 'network': 'LTE', 'subscriptionId': 2147483647},
'time': 1611094526689} [tel_5g_utils.py:is_current_network_5g_nsa:58]
Поиск неисправностей
Чтобы проверить ответ API без запуска теста ACTS во время сбоя, используйте следующие команды:
>> python3
>> from acts.controllers.android_device import AndroidDevice; ad = AndroidDevice('<SERIAL_ID>'); a, b = ad.get_droid()
>> a.telephonyStartTrackingDisplayInfoChange()
>> b.start()
>> b.wait_for_event("DisplayInfoChanged", lambda _: True, timeout=30)
{'name': 'DisplayInfoChanged', 'data': 'TelephonyDisplayInfo {network=LTE, override=LTE_CA, 'time': 1586483596907}