📘 AOSP 兼容性测试 · 实战课程
30 章 · 从入门到精通
01
AOSP与CTS概述
AOSP是什么
CTS是什么
Android生态角色
测试基本流程
02
搭建CTS测试环境
硬件要求
软件要求
下载CTS套件
adb/fastboot
环境验证
03
测试计划与用例管理
测试计划(Test Plan)
用例结构
选择与过滤
04
执行CTS测试
cts-tradefed
单模块测试
全量测试
并行与超时
05
CTS测试结果分析
TestResult.xml
解析失败原因
模块/系统失败
06
常见CTS失败类型
权限问题
API兼容性
行为变更
资源缺失
NDK接口
07
权限相关失败修复
AndroidManifest.xml
动态权限适配
权限组变更
08
API兼容性失败修复
检查SDK版本
@RequiresApi
备选实现
兼容库
09
行为变更失败修复
版本行为变更
后台限制
存储权限
通知变更
10
资源文件缺失修复
资源文件路径
资源限定符
多语言
屏幕密度
11
NDK接口兼容性修复
NDK API级别
__ANDROID_API__
ABI兼容
稳定API
12
多媒体相关CTS失败
Camera HAL
MediaCodec
音频路由
DRM保护
13
连接性相关CTS失败
Wi-Fi扫描
蓝牙配对
NFC读写
Telephony
14
安全相关CTS失败
Keystore加密
HTTPS
生物识别
设备管理
15
性能与功耗CTS失败
ANR无响应
内存泄漏
功耗管理
Doze模式
16
CTS-on-GSI测试
什么是GSI
GSI测试目的
下载刷入GSI
执行GSI测试
17
CTS Verifier测试
CTS Verifier作用
手动测试流程
传感器/GPS/相机
18
自动化CTS回归测试
编写自动化脚本
CI/CD集成
定时触发
结果通知
19
CTS补丁与版本管理
CTS版本号
Google补丁
本地补丁
版本回退
20
定制ROM的CTS适配
AOSP源码修改
GMS认证
预装应用兼容
系统属性
21
CTS失败日志深度分析
logcat日志
kernel日志
systrace
bugreport
22
使用CTS工具套件
cts-tradefed高级
结果比较
重跑用例
自定义配置
23
硬件抽象层(HAL)CTS适配
HAL接口版本
HAL stub
HIDL/AIDL转换
HAL测试
24
车载系统CTS适配
车载Android特殊性
CarService
车载HAL
车载UI测试
25
IoT与嵌入式CTS适配
低内存设备
无屏幕测试
传感器集成
网络协议
26
CTS与GMS认证流程
GMS认证概述
通过率要求
提交结果
常见问题
27
CTS问题修复案例实战1
Wi-Fi Direct失败
Camera预览黑屏
蓝牙A2DP无声
28
CTS问题修复案例实战2
存储权限拒绝
通知栏不显示
后台定位失败
29
CTS问题修复案例实战3
WebView加载失败
NFC读取失败
指纹识别不工作
30
CTS测试最佳实践与总结
测试策略
团队协作
常见陷阱
学习资源