WIFI测试和调试

本文将介绍如何使用 ASOP 中提供的工具测试和调试 WLAN 实现。

测试

为了测试 WLAN 框架,AOSP 提供了一系列单元测试、集成测试 (ACTS) 和 CTS 测试。

单元测试

AOSP 包括针对默认 WLAN 框架的功能测试和单元测试:这两项测试均适用于 WLAN Manager(应用端代码)和 WLAN 服务。

WLAN Manager 测试:

  • 位于 frameworks/base/wifi/tests 中
  • 使用以下 shell 可执行文件运行(有关更多执行选项,请参阅文件):

    % ./frameworks/base/wifi/tests/runtest.sh

WLAN 服务测试:

  • 位于 frameworks/opt/net/wifi/tests/wifitest 中
  • 使用以下 shell 可执行文件运行(有关更多执行选项,请参阅文件):

    % ./frameworks/opt/net/wifi/tests/wifitests/runtest.sh

Android 通讯测试套件

Android 通讯测试套件 (ACTS) 用于执行对连接堆栈(例如 WLAN、蓝牙和移动网络服务)的自动测试。该测试工具需要 adb 和 Python,您可以在以下位置找到它:tools/test/connectivity/acts

您可以在以下位置找到针对 WLAN 的 ACTS 测试:tools/test/connectivity/acts/tests/google/wifi,而且同一目录下还包含以下示例测试配置:example_config.json

CTS 测试

兼容性测试套件 (CTS) 包括针对 WLAN 框架的测试。这些测试位于以下位置:cts/tests/tests/net/src/android/net/wifi。WLAN CTS 测试要求在测试开始运行时将受测设备与接入点相关联。

增强型日志记录选项

Android 9 改进了 WLAN 日志记录功能,以便更轻松地调试 WLAN 问题。在 Android 9 中,驱动程序/固件环形缓冲区可以始终处于开启状态。在检测到错误状态时,可能会自动触发错误报告(仅限 userdebug 和 eng 版本)。如果您使用的是最新 WLAN HAL(1.2 版),则固件调试缓冲区存储在 HAL 中而不是框架内,以节省 IPC 费用。

实现

有关参考实现,请参阅供应商 HAL 中的默认实现。

您可以通过将资源 config_wifi_enable_wifi_firmware_debugging 设置为 false 来停用固件日志记录。

集成测试 (ACTS)

您可以在以下位置找到集成测试:/tools/test/connectivity/acts/tests/google/wifi/WifiDiagnosticsTest.py

对于 userdebug 版本,已验证的固件转储会保留在闪存中相应的 tombstone 目录下。在创建错误报告时,Dumpstate 就是从此目录中收集的。

手动测试

运行以下手动测试,以验证 tombstone 目录中的旧文件是否已被删除。

  1. 开启 WLAN。
  2. 连接到网络。
  3. 生成错误报告。
  4. 检查 bugreport zip 文件并验证 /lshal-debug/android.hardware.wifi@1.2__IWifi_default.txt 中是否包含已归档的固件日志。

转载于:https://www.cnblogs.com/huangguanyuan/p/9990839.html

WIFI 测试和调试相关推荐

  1. ESP8266 WIFI 模块串口调试过程-实现通过互联网实现数据远程传输(结尾含驱动代码链接)

    一. ESP8266 WIFI模块调试(串口发送AT指令调试). ESP8266 WIFI模块的调试算是最复杂的了,虽然通信是简单的串口通信,但是要设置ESP8266连接服务器并稳定无误的将数据上传, ...

  2. 通过WiFi进行adb调试(免去数据线烦扰)

    通过WiFi进行adb调试 一.原理: 1.让手机监听自己的某一个端口. 2.让电脑端的adb连接这个端口. 二.方法1:(电脑端和手机端) 1.让电脑和手机处于同一个wifi下. 2.将手机进行ro ...

  3. 网络分析仪在WiFi测试中的作用

    网络分析仪在WiFi测试中的作用 矢量网络分析仪 (VNA) 是一种电气测试仪器,它使用已知的连续波 (CW) 信号来测量射频 (RF) 和微波器件.系统和子系统在设计和制造应用中的幅度和相位响应.它 ...

  4. 计算机科学和Python编程导论(六) 测试与调试

    基本概念 测试指通过运行程序以确定它是否按照预期工作. 调试则指修复已知的未按预期工作的程序. 测试和调试的关键就是将程序分解成独立的部件,可以在不受其他部件影响的情况下实现.测试和调试. 关于测试, ...

  5. angular select设置默认选中_改进 Angular + Jest 项目中组件测试的调试

    @angular-extensions/pretty-html-log 原文链接​medium.com原作者:Kevin Kreuzer​medium.com 译者: 知乎用户​www.zhihu.c ...

  6. C++测试与调试知识

    //C++测试与调试知识 #ifndef OutputRoots_ #define OutputRoots_ template<class T> void OutputRoots(T a, ...

  7. 《Java8实战》笔记(08):重构、测试和调试

    重构.测试和调试 为改善可读性和灵活性重构代码 利用Lambda表达式,你可以写出更简洁.更灵活的代码.用"更简洁"来描述Lambda表达式是因为相较于匿名类,Lambda表达式可 ...

  8. adb 最大连接_工具集 | Android Studio—使用 WI-FI 进行 ADB 调试

    前言 Android 开发离不开 ADB 调试,使用 WI-FI 进行 ADB 调试可以避免手机需要保持 USB连接主机.这篇文章记录了使用 WI-FI 进行 ADB 调试遇到的问题,希望能帮上忙. ...

  9. 如何测试并调试基于 NDK 的 Android 应用

    本文概述了如何为 x86 平台测试和调试基于 NDK 的应用. 本文将从头至尾完整展示如何创建示例应用,并演示如何测试和调试. 1. 开发环境 请确保已安装了 Android 应用开发环境. 如果尚未 ...

最新文章

  1. 1004_C/C++笔试题_13:16道c语言面试【8/9】
  2. 昨天,JetBrains 推出“下一代 IDE”,快看有哪些值得期待的功能!
  3. 红书《题目与解读》第一章 数学 题解《ACM国际大学生程序设计竞赛题目与解读》
  4. 《数学之美》第15章 矩阵运算和文本处理中的两个分类问题
  5. AcornCharts
  6. Java SortedSet接口
  7. c#.net配置mysql数据库连接池_C#MySQL连接池
  8. 试图安装客户出现SSR问题的Spartacus Storefront时遇到的错误消息
  9. win10 安装Pytorch GPU版+CUDA+cuDNN(篇幅较长保姆教程) (含CUDA11.1与cuDNN8.0.4安装包)
  10. saltstack returners
  11. Xcode7中你一定要知道的炸裂调试神技(转)
  12. Java 接口和类一些总结
  13. cookie里面用到的关键字_Java的理解角度-关键字篇
  14. 普通函数和Generator函数递归获取嵌套数组的最大值
  15. mysql连17张表_mysql连表查询
  16. phpstudy打开浏览php页面发现显示源码解决方法
  17. 基于JMF RTP的音视频传输
  18. 企业微信如何解散自己建的群聊
  19. ClickHouse快速安装-可视化工具连接-创建第一个ck库表(一)
  20. 聚焦一带一路建设,助推装备工业发展—西部制博会3月15日即将启幕

热门文章

  1. SWD协议通信的简单总结
  2. 使用gdb调试程序完全教程
  3. AI语音正终结“耳聋工厂” 千万中国工人将受益
  4. Chrome浏览器内嵌的各种手机模拟器
  5. java实现线程通信的几种方式
  6. 52 条 SQL 语句性能优化策略,建议收藏!
  7. java 动态代理与静态代理
  8. 同相运算放大器电压增益计算
  9. Diligent推出ESG尽职调查产品,帮助公司应对不断变化的监管要求
  10. 计算机数控机床的原理图,数控机床工作原理