📘 嵌入式固件自动化测试框架设计
✦ 30章 从入门到实战 · 友好色系 ✦
📁
30个章节
⚡
单元·集成·系统
🧩
点击卡片跳转
🍃 轻量 · 明快 · 高效
01
自动化测试概述
什么是嵌入式固件测试
为什么需要自动化
自动化测试ROI分析
02
测试框架选型
主流框架对比
Unity/CMock/Ceedling
PyTest嵌入式扩展
选型决策矩阵
03
环境搭建
交叉编译工具链配置
模拟器环境(QEMU)
硬件在环(HIL)准备
04
单元测试基础
测试用例结构
断言宏的使用
测试夹具(Fixture)设计
05
模拟与桩函数
手动打桩技巧
自动生成桩代码(CMock)
模拟外部依赖
06
测试覆盖率分析
GCOV/LCOV工具链
覆盖率报告解读
如何提高覆盖率
07
持续集成集成
Jenkins/GitLab CI配置
自动化触发测试
测试结果通知
08
测试数据管理
测试向量设计
数据驱动测试
外部文件加载测试数据
09
通信协议测试
UART/CAN/SPI协议模拟
协议一致性测试
错误注入测试
10
性能测试
固件执行时间测量
内存泄漏检测
堆栈溢出检测
11
回归测试策略
全量回归 vs 增量回归
影响范围分析
测试用例优先级
12
测试报告生成
JUnit XML格式
Allure报告集成
自定义HTML报告
13
硬件抽象层测试
HAL层接口测试
寄存器读写验证
外设驱动测试
14
RTOS任务测试
任务调度测试
信号量/互斥锁测试
任务栈监控
15
安全测试基础
固件安全扫描
静态代码分析(SAST)
模糊测试入门
16
测试框架扩展
自定义断言
测试钩子(Hook)
插件机制设计
17
多目标平台测试
同一代码在不同MCU上的测试
条件编译测试策略
18
测试代码规范
测试代码命名规范
测试文件组织结构
代码审查清单
19
调试与日志
测试过程中的日志系统
失败用例自动截图/抓日志
远程调试
20
测试环境虚拟化
Docker容器化测试环境
环境版本管理
一键部署
21
边界值测试
输入参数边界分析
极端条件测试
鲁棒性测试
22
状态机测试
状态转换覆盖
状态事件序列测试
模型驱动测试
23
中断处理测试
中断响应时间测试
中断嵌套测试
中断屏蔽测试
24
低功耗测试
功耗模式切换测试
唤醒源测试
功耗测量自动化
25
OTA升级测试
升级包完整性校验
断点续传测试
回滚机制测试
26
测试框架维护
测试用例重构
测试数据清理
框架版本升级策略
27
团队协作
测试用例评审流程
测试知识库建设
新人培训方案
28
高级Mock技术
回调模拟
异步操作模拟
时间依赖模拟
29
硬件故障模拟
引脚短路模拟
电源波动模拟
时钟失效模拟
30
综合实战项目
从零搭建完整自动化测试框架
涵盖单元·集成·系统测试