自动化测试 & CI 实战
📚 30章 ·
完整版
01
自动化测试概述
什么是自动化测试
为什么需要
ROI分析
Android测试金字塔
02
测试环境搭建
JDK配置
Android SDK
Gradle
模拟器/真机
ADB基础
03
JUnit4/5基础
注解详解
断言机制
测试套件
参数化测试
执行顺序
04
Espresso框架入门
核心概念
onView/onData
Matcher
ViewAction
ViewAssertion
05
Espresso高级用法
Idling Resources
自定义Matcher
Intent验证
WebView测试
RecyclerView
06
UI Automator框架
UIAutomator原理
UiDevice/Selector
跨应用测试
手势操作
屏幕旋转
07
Robolectric框架
Robolectric原理
Shadow对象
Activity生命周期
数据库测试
网络请求
08
Mockito框架
Mock与Spy
Stubbing
验证行为
ArgumentCaptor
BDDMockito
09
PowerMock与MockK
静态方法Mock
私有方法Mock
Kotlin协程测试
注意事项
10
测试数据管理
数据工厂模式
JSON/XML驱动
Faker库
数据库预置数据
11
网络层测试
Retrofit Mock
OkHttp MockWebServer
WireMock
网络异常场景
12
数据库测试
Room测试
SQLite测试
数据库迁移
事务测试
13
SharedPreferences与DataStore测试
SP单元测试
DataStore测试
加密存储测试
14
ViewModel与LiveData测试
ViewModel测试
LiveData测试
协程ViewModel
SavedStateHandle
15
Compose UI测试
Compose测试规则
语义树
Compose断言
手势测试
动画测试
16
Navigation组件测试
NavController测试
NavHost测试
DeepLink测试
返回栈测试
17
WorkManager测试
WorkManager测试规则
Worker测试
周期性任务
约束条件
18
性能测试基础
TraceView/Profiler
LeakCanary
ANR分析
启动时间测试
19
UI性能测试
Layout Inspector
GPU渲染分析
过度绘制检测
帧率测试
20
安全测试基础
HTTPS抓包
Root检测
混淆测试
签名验证
21
持续集成概念
CI/CD定义
Jenkins/GitLab/GitHub对比
流水线设计原则
22
Jenkins搭建与配置
Jenkins安装
插件管理
节点配置
凭据管理
Pipeline语法
23
GitLab CI配置
.gitlab-ci.yml
Runner配置
Stage与Job
缓存与制品
24
GitHub Actions实战
Workflow语法
Actions市场
矩阵构建
环境变量/Secret
25
Docker在CI中的应用
Dockerfile编写
Docker Compose
Android镜像
容器化测试环境
26
自动化构建与签名
Gradle构建变体
构建缓存
多渠道打包
自动化签名
APK瘦身
27
测试报告与质量门禁
Allure报告
JaCoCo覆盖率
SonarQube集成
质量门禁
28
自动化部署与分发
Firebase App Distribution
蒲公英/fir.im
TestFlight
OTA分发
29
监控与告警
Crashlytics集成
自定义异常上报
性能监控
告警规则
30
完整CI/CD实战
代码提交到应用商店
多环境部署
灰度发布
回滚策略