Đối với các thiết bị chạy Android 11 trở lên, Bộ kiểm thử giao tiếp Android (ACTS) hỗ trợ các trường hợp sử dụng cốt lõi 5G NSA cho môi trường một và nhiều thiết bị. Trang này trình bày cách ACTS phát hiện và đảm bảo thiết bị được kết nối với mạng NSA 5G, đồng thời cung cấp cho bạn thông tin tổng quan về cấu trúc đường dẫn kiểm thử
Phát hiện
Kể từ Android 11, khung Android sẽ bao gồm các API để phát hiện 5G. Để biết thêm thông tin chi tiết, hãy xem phần Phát hiện 5G.
Lớp tập lệnh cho Android (SL4A) hỗ trợ tính năng phát hiện 5G bằng cách theo dõi các sự kiện LISTEN_DISPLAY_INFO_CHANGED
từ PhoneStateListener
và ghi đè phương thức onDisplayInfoChanged()
. SL4A sử dụng các giá trị sau để phân biệt giữa các loại kết nối NSA (không độc lập), mmWave (băng tần milimét) và SA (độc lập) cho 5G:
Loại kết nối | Giá trị |
---|---|
5G NSA | TelephonyManager.getDataNetworkType() = LTE |
5G mmWave | TelephonyDisplayInfo.getOverrideNetworkType() = NR_MMWAVE |
5G SA | TelephonyManager.getDataNetworkType() = NR |
Các bài kiểm thử ACTS sử dụng phương thức is_current_network_5g_nsa()
để đảm bảo thiết bị được kết nối với mạng NSA 5G
Đường dẫn kiểm thử và cấu trúc kiểm thử
Tất cả các bài kiểm thử điện thoại (từ 1400 trở lên) trong ACTS đều nằm trong thư mục tel
.
Các bài kiểm thử 5G nằm trong thư mục tools/test/connectivity/acts\_tests/tests/google/nr/
(nr là viết tắt của new radio). Với việc ra mắt công nghệ truy cập vô tuyến 5G (RAT), các thử nghiệm 5G sẽ tách biệt với 4G, 3G, 2G và 1x cho môi trường mạng trực tiếp để cho phép các thử nghiệm ACTS có thể mở rộng và độc lập.
Phần sau đây mô tả các lớp kiểm thử cho kiểm thử 5G.
Nsa5gActivationTest
: Xác minh xem một thiết bị có kết nối chính xác với 5G NSA từ nhiều trạng thái hay không.test_5g_nsa_activation_from_apm test_5g_nsa_activation_from_reboot test_5g_nsa_activation_from_3g
Nsa5gVoiceTest
: Xác minh chức năng gọi thoại giữa nhiều thiết bị.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
: Xác minh chức năng dữ liệu như duyệt web, nghẽn dữ liệu và đo lượng dữ liệu.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
: Xác minh việc gửi và nhận tin nhắn SMS giữa nhiều thiết bị.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
: Xác minh việc gửi và nhận tin nhắn MMS giữa nhiều thiết bị.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
: Xác minh tính năng chia sẻ Internet qua Wi-Fi trên một thiết bị được kết nối với 5G NSA.test_5g_nsa_tethering_to_5gwifi test_5g_nsa_tethering_to_2gwifi
Kết quả kiểm thử mẫu
Để xác nhận một thiết bị đang sử dụng 5G NSA, hãy kiểm tra các thông điệp nhật ký sau trong 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]
Khắc phục sự cố
Để phân loại phản hồi API mà không cần chạy kiểm thử ACTS trong trường hợp lỗi, hãy sử dụng các lệnh sau:
>> 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}