diff --git a/test-plan/README.md b/test-plan/README.md
new file mode 100644
index 0000000..a3bd7b4
--- /dev/null
+++ b/test-plan/README.md
@@ -0,0 +1,58 @@
+# AI-Box Demo 测试目录
+
+## 测试文档结构
+
+```
+test-plan/
+├── README.md # 测试目录说明
+├── TEST_STRATEGY.md # 测试策略文档
+├── TC_POWER_MGMT.md # 电源管理测试用例
+├── TC_MCU_SOC.md # MCU-SoC通信测试用例
+├── TC_SENSORS.md # 传感器数据测试用例
+├── TC_AUDIO_VIDEO.md # 音视频功能测试用例
+├── TC_SYSTEM_INTEGRATION.md # 系统集成测试用例
+└── automation/ # 自动化测试
+ ├── test_framework.py # 测试框架
+ ├── scripts/ # 测试脚本
+ └── reports/ # 测试报告
+```
+
+## 测试用例汇总
+
+| 模块 | P0用例 | P1用例 | P2用例 | 总计 |
+|------|--------|--------|--------|------|
+| 电源管理 | 4 | 3 | - | 7 |
+| MCU-SoC通信 | 4 | 4 | 1 | 9 |
+| 传感器数据 | 2 | 5 | 1 | 8 |
+| 音视频功能 | 4 | 6 | - | 10 |
+| 系统集成 | 5 | 6 | - | 11 |
+| **总计** | **19** | **24** | **2** | **45** |
+
+## 运行测试
+
+### 手动测试
+按照各模块TC_*.md文档执行测试用例
+
+### 自动化测试
+```bash
+# 安装依赖
+pip install pytest pytest-html
+
+# 运行全部测试
+python -m pytest automation/test_framework.py -v
+
+# 运行冒烟测试
+python -m pytest automation/test_framework.py -v -m smoke
+
+# 生成HTML报告
+python -m pytest automation/test_framework.py -v --html=automation/reports/report.html
+```
+
+## 测试报告
+
+测试报告生成路径: `automation/reports/`
+
+---
+
+*测试工程师: 沙千里*
+*最后更新: 2026-03-05*
\ No newline at end of file
diff --git a/test-plan/TC_AUDIO_VIDEO.md b/test-plan/TC_AUDIO_VIDEO.md
new file mode 100644
index 0000000..faf596b
--- /dev/null
+++ b/test-plan/TC_AUDIO_VIDEO.md
@@ -0,0 +1,127 @@
+# 音视频功能测试用例
+
+**模块**: 音视频 | **优先级**: P1 | **编写**: 沙千里
+
+---
+
+## TC-AV-001: 视频采集功能测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-AV-001 |
+| **测试项** | 摄像头视频采集 |
+| **前置条件** | 摄像头连接正常 |
+| **测试步骤** | 1. 启动视频采集
2. 观察预览画面
3. 验证分辨率/帧率 |
+| **预期结果** | 画面清晰,符合规格(分辨率/帧率) |
+| **优先级** | P0 |
+
+---
+
+## TC-AV-002: 视频录制功能测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-AV-002 |
+| **测试项** | 视频录制与存储 |
+| **前置条件** | 存储设备就绪 |
+| **测试步骤** | 1. 开始录制视频
2. 运行一段时间后停止
3. 验证文件完整性 |
+| **预期结果** | 视频文件可正常播放,无花屏/卡顿 |
+| **优先级** | P0 |
+
+---
+
+## TC-AV-003: 视频直播功能测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-AV-003 |
+| **测试项** | 视频流推送/直播 |
+| **前置条件** | 网络连接正常,直播服务器就绪 |
+| **测试步骤** | 1. 启动视频直播
2. 在另一端接收视频流
3. 验证延迟和流畅度 |
+| **预期结果** | 延迟<3s,画面流畅 |
+| **优先级** | P1 |
+
+---
+
+## TC-AV-004: 音频采集功能测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-AV-004 |
+| **测试项** | 麦克风音频采集 |
+| **前置条件** | 麦克风连接正常 |
+| **测试步骤** | 1. 启动音频采集
2. 播放测试声音
3. 验证采集质量 |
+| **预期结果** | 音频清晰,无明显噪音/失真 |
+| **优先级** | P0 |
+
+---
+
+## TC-AV-005: 音频播放功能测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-AV-005 |
+| **测试项** | 扬声器/耳机音频播放 |
+| **前置条件** | 音频输出设备连接正常 |
+| **测试步骤** | 1. 播放标准测试音频
2. 验证输出质量 |
+| **预期结果** | 音频清晰,音量适中 |
+| **优先级** | P0 |
+
+---
+
+## TC-AV-006: 音视频同步测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-AV-006 |
+| **测试项** | 音视频同步性 |
+| **前置条件** | 音视频同时工作 |
+| **测试步骤** | 1. 录制包含声音的视频
2. 播放并检查音画同步 |
+| **预期结果** | 音视频同步误差<100ms |
+| **优先级** | P1 |
+
+---
+
+## TC-AV-007: 视频编码效率测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-AV-007 |
+| **测试项** | 视频编码质量与码率 |
+| **前置条件** | 编码参数可配置 |
+| **测试步骤** | 1. 设置不同编码参数
2. 分析编码后视频质量 |
+| **预期结果** | 码率与质量符合预期 |
+| **优先级** | P1 |
+
+---
+
+## TC-AV-008: 弱光环境视频测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-AV-008 |
+| **测试项** | 低光照环境视频质量 |
+| **前置条件** | 可控制光照条件 |
+| **测试步骤** | 1. 降低环境光照
2. 观察视频质量 |
+| **预期结果** | 仍能看清画面,符合低光规格 |
+| **优先级** | P1 |
+
+---
+
+## TC-AV-009: 音视频设备热插拔测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-AV-009 |
+| **测试项** | USB音视频设备热插拔 |
+| **前置条件** | USB摄像头/麦克风准备就绪 |
+| **测试步骤** | 1. 系统运行时插拔设备
2. 验证检测和恢复 |
+| **预期结果** | 能正确识别设备插拔并恢复工作 |
+| **优先级** | P1 |
+
+---
+
+## TC-AV-010: 长时间录制测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-AV-010 |
+| **测试项** | 长时间视频录制稳定性 |
+| **前置条件** | 存储空间充足 |
+| **测试步骤** | 1. 开始连续录制
2. 运行4小时以上
3. 检查文件完整性 |
+| **预期结果** | 无内存泄漏,文件完整 |
+| **优先级** | P1 |
+
+---
+
+*持续更新中...*
\ No newline at end of file
diff --git a/test-plan/TC_MCU_SOC.md b/test-plan/TC_MCU_SOC.md
new file mode 100644
index 0000000..72bccc5
--- /dev/null
+++ b/test-plan/TC_MCU_SOC.md
@@ -0,0 +1,115 @@
+# MCU-SoC通信可靠性测试用例
+
+**模块**: MCU-SoC通信 | **优先级**: P0 | **编写**: 沙千里
+
+---
+
+## TC-MCU-001: 通信链路建立测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-MCU-001 |
+| **测试项** | MCU-SoC通信链路建立 |
+| **前置条件** | MCU和SoC均上电完成 |
+| **测试步骤** | 1. 等待系统启动完成
2. 验证通信链路状态
3. 记录首次通信成功时间 |
+| **预期结果** | 通信链路在SoC启动后30s内建立成功 |
+| **优先级** | P0 |
+
+---
+
+## TC-MCU-002: 心跳机制验证
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-MCU-002 |
+| **测试项** | 心跳检测机制 |
+| **前置条件** | 通信链路正常 |
+| **测试步骤** | 1. 监控心跳报文
2. 模拟心跳停止
3. 验证超时检测和恢复机制 |
+| **预期结果** | 心跳超时3s内检测到异常并触发恢复 |
+| **优先级** | P0 |
+
+---
+
+## TC-MCU-003: 数据传输完整性测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-MCU-003 |
+| **测试项** | 指令/数据收发完整性 |
+| **前置条件** | 通信正常 |
+| **测试步骤** | 1. 发送1000条测试指令
2. 验证响应正确性
3. 统计错误率 |
+| **预期结果** | 错误率 < 0.1% |
+| **优先级** | P0 |
+
+---
+
+## TC-MCU-004: 大数据量传输测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-MCU-004 |
+| **测试项** | 大数据块传输 |
+| **前置条件** | 通信正常 |
+| **测试步骤** | 1. 传输1MB以上数据
2. 验证数据完整性(Checksum) |
+| **预期结果** | 数据完整,无丢失/损坏 |
+| **优先级** | P1 |
+
+---
+
+## TC-MCU-005: 通信中断与恢复测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-MCU-005 |
+| **测试项** | 通信异常自动恢复 |
+| **前置条件** | 通信正常 |
+| **测试步骤** | 1. 模拟通信中断(物理断开/软件挂起)
2. 观察系统响应
3. 验证自动重连 |
+| **预期结果** | 通信恢复后系统自动恢复正常工作 |
+| **优先级** | P0 |
+
+---
+
+## TC-MCU-006: 并发指令处理测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-MCU-006 |
+| **测试项** | 多指令并发处理 |
+| **前置条件** | 通信正常 |
+| **测试步骤** | 1. 同时发送5条以上不同指令
2. 验证都能正确响应
3. 检查响应顺序 |
+| **预期结果** | 所有指令按序正确响应,无死锁/乱序 |
+| **优先级** | P1 |
+
+---
+
+## TC-MCU-007: 通信超时处理测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-MCU-007 |
+| **测试项** | 指令响应超时处理 |
+| **前置条件** | 通信正常 |
+| **测试步骤** | 1. 发送需要长时间处理的指令
2. 验证超时检测
3. 验证超时后的处理逻辑 |
+| **预期结果** | 超时后返回正确错误码,不阻塞系统 |
+| **优先级** | P1 |
+
+---
+
+## TC-MCU-008: 通信接口压力测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-MCU-008 |
+| **测试项** | 高频通信压力测试 |
+| **前置条件** | 通信正常 |
+| **测试步骤** | 1. 以10ms间隔连续发送指令
2. 运行1小时
3. 统计错误率和系统响应 |
+| **预期结果** | 错误率 < 0.5%,系统无异常 |
+| **优先级** | P1 |
+
+---
+
+## TC-MCU-009: 协议兼容性测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-MCU-009 |
+| **测试项** | 通信协议版本兼容 |
+| **前置条件** | 多版本固件 |
+| **测试步骤** | 1. 测试不同MCU与SoC固件版本组合
2. 验证兼容性 |
+| **预期结果** | 主流版本组合兼容 |
+| **优先级** | P2 |
+
+---
+
+*持续更新中...*
\ No newline at end of file
diff --git a/test-plan/TC_POWER_MGMT.md b/test-plan/TC_POWER_MGMT.md
new file mode 100644
index 0000000..d32648f
--- /dev/null
+++ b/test-plan/TC_POWER_MGMT.md
@@ -0,0 +1,91 @@
+# 电源管理模式切换测试用例
+
+**模块**: 电源管理 | **优先级**: P0 | **编写**: 沙千里
+
+---
+
+## TC-PM-001: 上电时序测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-PM-001 |
+| **测试项** | 上电时序验证 |
+| **前置条件** | 设备断电,12V/24V电源准备就绪 |
+| **测试步骤** | 1. 连接12V电源
2. 观察MCU上电初始化
3. 观察SoC启动过程
4. 记录各阶段时间 |
+| **预期结果** | MCU在500ms内响应,SoC在5s内启动完成 |
+| **优先级** | P0 |
+
+---
+
+## TC-PM-002: 正常下电流程测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-PM-002 |
+| **测试项** | 正常下电流程 |
+| **前置条件** | 系统正常运行 |
+| **测试步骤** | 1. 触发系统关机
2. 观察SoC正常关机
3. 观察MCU进入低功耗
4. 验证存储数据完整性 |
+| **预期结果** | SoC正常关机后MCU进入低功耗,无数据丢失 |
+| **优先级** | P0 |
+
+---
+
+## TC-PM-003: 异常断电测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-PM-003 |
+| **测试项** | 异常断电保护 |
+| **前置条件** | 系统正常运行,正在写数据 |
+| **测试步骤** | 1. 模拟突然断电(直接拔掉电源)
2. 重新上电
3. 检查数据完整性 |
+| **预期结果** | 系统能正常恢复,关键数据不丢失 |
+| **优先级** | P0 |
+
+---
+
+## TC-PM-004: 低功耗模式切换测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-PM-004 |
+| **测试项** | 工作→低功耗切换 |
+| **前置条件** | 系统处于工作模式 |
+| **测试步骤** | 1. 触发低功耗进入条件(如无操作超时)
2. 验证各外设关闭
3. 测量功耗 |
+| **预期结果** | 功耗降至<50mA,符合规格 |
+| **优先级** | P0 |
+
+---
+
+## TC-PM-005: 低功耗唤醒测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-PM-005 |
+| **测试项** | 远程唤醒/定时唤醒 |
+| **前置条件** | 系统处于低功耗模式 |
+| **测试步骤** | 1. 发送唤醒信号/等待定时唤醒
2. 验证系统正常恢复
3. 验证数据连续性 |
+| **预期结果** | 唤醒成功,系统恢复正常工作状态 |
+| **优先级** | P0 |
+
+---
+
+## TC-PM-006: 电源模式切换边界测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-PM-006 |
+| **测试项** | 电压波动容忍度 |
+| **前置条件** | 电源可调 |
+| **测试步骤** | 1. 设置输入电压范围(9V-36V)
2. 验证各电压下系统工作正常 |
+| **预期结果** | 9V-36V范围内系统稳定工作 |
+| **优先级** | P1 |
+
+---
+
+## TC-PM-007: 电源管理异常恢复
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-PM-007 |
+| **测试项** | 电源异常自动恢复 |
+| **前置条件** | 可模拟电源异常 |
+| **测试步骤** | 1. 模拟电压瞬降/瞬升
2. 观察系统行为
3. 验证恢复正常 |
+| **预期结果** | 系统能自动恢复或安全关机 |
+| **优先级** | P1 |
+
+---
+
+*持续更新中...*
\ No newline at end of file
diff --git a/test-plan/TC_SENSORS.md b/test-plan/TC_SENSORS.md
new file mode 100644
index 0000000..d25f328
--- /dev/null
+++ b/test-plan/TC_SENSORS.md
@@ -0,0 +1,115 @@
+# 传感器数据准确性验证测试用例
+
+**模块**: 传感器数据 | **优先级**: P1 | **编写**: 沙千里
+
+---
+
+## TC-SEN-001: 温度传感器准确性测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SEN-001 |
+| **测试项** | 温度数据采集准确性 |
+| **前置条件** | 温度传感器就绪,可获取参考温度计 |
+| **测试步骤** | 1. 设置标准温度环境(如0°C, 25°C, 40°C)
2. 等待传感器稳定
3. 对比采集值与参考值 |
+| **预期结果** | 误差在±2°C以内 |
+| **优先级** | P0 |
+
+---
+
+## TC-SEN-002: 湿度传感器准确性测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SEN-002 |
+| **测试项** | 湿度数据采集准确性 |
+| **前置条件** | 湿度传感器就绪,湿度环境可控 |
+| **测试步骤** | 1. 设置不同湿度(30%, 60%, 90%RH)
2. 对比采集值与参考值 |
+| **预期结果** | 误差在±5%RH以内 |
+| **优先级** | P0 |
+
+---
+
+## TC-SEN-003: 加速度传感器准确性测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SEN-003 |
+| **测试项** | 加速度/振动数据采集 |
+| **前置条件** | 加速度传感器就绪,可控制运动状态 |
+| **测试步骤** | 1. 静止状态验证零漂
2. 已知加速度验证准确性
3. 振动频率响应测试 |
+| **预期结果** | 静态零漂<0.1g,动态误差<5% |
+| **优先级** | P1 |
+
+---
+
+## TC-SEN-004: 传感器数据更新率测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SEN-004 |
+| **测试项** | 传感器数据刷新频率 |
+| **前置条件** | 传感器正常工作 |
+| **测试步骤** | 1. 记录连续数据帧的时间戳
2. 计算实际更新率 |
+| **预期结果** | 符合规格要求(如≥1Hz) |
+| **优先级** | P1 |
+
+---
+
+## TC-SEN-005: 传感器异常检测测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SEN-005 |
+| **测试项** | 传感器异常检测能力 |
+| **前置条件** | 传感器正常工作 |
+| **测试步骤** | 1. 模拟传感器故障(短路/断路)
2. 验证系统检测和告警 |
+| **预期结果** | 异常能被检测并上报 |
+| **优先级** | P0 |
+
+---
+
+## TC-SEN-006: 多传感器数据一致性测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SEN-006 |
+| **测试项** | 多传感器数据同步 |
+| **前置条件** | 多个传感器同时工作 |
+| **测试步骤** | 1. 同时获取多传感器数据
2. 验证时间戳一致性
3. 验证数据关联性 |
+| **预期结果** | 时间差<100ms,数据逻辑一致 |
+| **优先级** | P1 |
+
+---
+
+## TC-SEN-007: 传感器数据边界测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SEN-007 |
+| **测试项** | 传感器量程边界测试 |
+| **前置条件** | 可模拟极端环境 |
+| **测试步骤** | 1. 超出规格的温度/湿度/加速度
2. 验证数据输出和异常处理 |
+| **预期结果** | 正确上报超量程或限幅 |
+| **优先级** | P1 |
+
+---
+
+## TC-SEN-008: 传感器长期稳定性测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SEN-008 |
+| **测试项** | 传感器漂移测试 |
+| **前置条件** | 传感器正常,长期测试环境就绪 |
+| **测试步骤** | 1. 连续运行72小时
2. 记录数据变化趋势
3. 分析漂移情况 |
+| **预期结果** | 漂移在允许范围内 |
+| **优先级** | P2 |
+
+---
+
+## TC-SEN-009: 传感器数据处理算法测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SEN-009 |
+| **测试项** | 数据滤波/融合算法验证 |
+| **前置条件** | 具备原始数据和算法输出 |
+| **测试步骤** | 1. 输入标准测试数据
2. 验证算法输出正确性 |
+| **预期结果** | 输出符合算法规格 |
+| **优先级** | P1 |
+
+---
+
+*持续更新中...*
\ No newline at end of file
diff --git a/test-plan/TC_SYSTEM_INTEGRATION.md b/test-plan/TC_SYSTEM_INTEGRATION.md
new file mode 100644
index 0000000..c3da1c7
--- /dev/null
+++ b/test-plan/TC_SYSTEM_INTEGRATION.md
@@ -0,0 +1,149 @@
+# 系统集成测试方案
+
+**模块**: 系统集成 | **优先级**: P0 | **编写**: 沙千里
+
+---
+
+## TC-SYS-001: 完整启动流程测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SYS-001 |
+| **测试项** | 上电到业务就绪全流程 |
+| **前置条件** | 设备断电 |
+| **测试步骤** | 1. 上电
2. 观察各模块初始化
3. 验证业务就绪状态 |
+| **预期结果** | 各阶段正常,无报错,业务可用 |
+| **优先级** | P0 |
+
+---
+
+## TC-SYS-002: 多模块协同工作测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SYS-002 |
+| **测试项** | 传感器+音视频+通信协同 |
+| **前置条件** | 各模块正常工作 |
+| **测试步骤** | 1. 同时启用所有功能
2. 观察系统负载和稳定性 |
+| **预期结果** | 各功能正常运行,无冲突 |
+| **优先级** | P0 |
+
+---
+
+## TC-SYS-003: 异常恢复集成测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SYS-003 |
+| **测试项** | 各模块异常后的系统恢复 |
+| **前置条件** | 系统正常运行 |
+| **测试步骤** | 1. 依次模拟各模块异常
2. 验证系统检测和恢复 |
+| **预期结果** | 模块恢复后系统正常运转 |
+| **优先级** | P0 |
+
+---
+
+## TC-SYS-004: 系统资源压力测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SYS-004 |
+| **测试项** | CPU/内存/网络资源压力 |
+| **前置条件** | 压力测试工具就绪 |
+| **测试步骤** | 1. 施加持续压力
2. 监控资源使用
3. 验证系统稳定性 |
+| **预期结果** | 系统不崩溃,功能正常降级 |
+| **优先级** | P1 |
+
+---
+
+## TC-SYS-005: 系统更新升级测试
+| **用例ID** | TC-SYS-005 |
+| **测试项** | 固件/软件在线升级 |
+| **前置条件** | 升级包准备就绪 |
+| **测试步骤** | 1. 执行OTA/本地升级
2. 验证升级过程
3. 验证升级后功能 |
+| **预期结果** | 升级成功,功能正常 |
+| **优先级** | P0 |
+
+---
+
+## TC-SYS-006: 数据存储与持久化测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SYS-006 |
+| **测试项** | 关键数据持久化存储 |
+| **前置条件** | 存储正常 |
+| **测试步骤** | 1. 写入配置/业务数据
2. 重启系统
3. 验证数据恢复 |
+| **预期结果** | 数据完整恢复 |
+| **优先级** | P0 |
+
+---
+
+## TC-SYS-007: 系统日志完整性测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SYS-007 |
+| **测试项** | 系统运行日志记录 |
+| **前置条件** | 日志系统就绪 |
+| **测试步骤** | 1. 执行各种操作
2. 检查日志完整性 |
+| **预期结果** | 日志记录完整可追溯 |
+| **优先级** | P1 |
+
+---
+
+## TC-SYS-008: 网络通信集成测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SYS-008 |
+| **测试项** | 4G/5G/WiFi通信与业务集成 |
+| **前置条件** | 网络模块正常 |
+| **测试步骤** | 1. 测试各网络模式
2. 验证业务数据传输 |
+| **预期结果** | 网络正常时业务可用 |
+| **优先级** | P1 |
+
+---
+
+## TC-SYS-009: 低温启动测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SYS-009 |
+| **测试项** | 低温环境(-20°C)启动 |
+| **前置条件** | 温控箱就绪 |
+| **测试步骤** | 1. 降温到-20°C
2. 上电启动
3. 验证功能 |
+| **预期结果** | 能正常启动并工作 |
+| **优先级** | P1 |
+
+---
+
+## TC-SYS-010: 高温运行环境测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SYS-010 |
+| **测试项** | 高温环境(+70°C)运行 |
+| **前置条件** | 温控箱就绪 |
+| **测试步骤** | 1. 升温到+70°C
2. 持续运行测试
3. 验证功能 |
+| **预期结果** | 能稳定运行不过热降频 |
+| **优先级** | P1 |
+
+---
+
+## TC-SYS-011: 振动环境测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SYS-011 |
+| **测试项** | 车载振动环境适应性 |
+| **前置条件** | 振动台就绪 |
+| **测试步骤** | 1. 按车载标准振动
2. 验证功能正常 |
+| **预期结果** | 无连接松动,功能正常 |
+| **优先级** | P1 |
+
+---
+
+## TC-SYS-012: 电源波动集成测试
+| 项目 | 内容 |
+|------|------|
+| **用例ID** | TC-SYS-012 |
+| **测试项** | 车载电源波动适应性 |
+| **前置条件** | 电源模拟器就绪 |
+| **测试步骤** | 1. 模拟抛负载/启停等波形
2. 验证系统稳定 |
+| **预期结果** | 系统正常运行或安全关机 |
+| **优先级** | P0 |
+
+---
+
+*持续更新中...*
\ No newline at end of file
diff --git a/test-plan/TEST_STRATEGY.md b/test-plan/TEST_STRATEGY.md
new file mode 100644
index 0000000..4cc3155
--- /dev/null
+++ b/test-plan/TEST_STRATEGY.md
@@ -0,0 +1,103 @@
+# AI-Box Demo 测试策略文档
+
+**版本**: v1.0
+**编写**: 沙千里 (测试工程师)
+**日期**: 2026-03-05
+**项目**: 商用车智能挂车AI-Box Demo
+
+---
+
+## 1. 测试范围与目标
+
+### 1.1 测试范围
+- 电源管理模式切换
+- MCU-SoC通信可靠性
+- 传感器数据准确性
+- 音视频功能
+- 系统集成
+
+### 1.2 测试目标
+- 验证所有需求功能的正确性
+- 确保系统在各种工况下的稳定性
+- 保障MCU-SoC通信的可靠性
+- 验证传感器数据的准确性和实时性
+
+---
+
+## 2. 测试类型规划
+
+### 2.1 功能测试
+| 模块 | 测试内容 | 优先级 |
+|------|----------|--------|
+| 电源管理 | 上电/下电时序、功耗模式切换、低功耗唤醒 | P0 |
+| MCU-SoC通信 | 通信协议、异常处理、数据完整性 | P0 |
+| 传感器数据 | 温度/湿度/加速度数据采集、准确性校验 | P1 |
+| 音视频 | 视频录制/直播、音频采集/播放 | P1 |
+| 系统集成 | 各模块协同工作、异常恢复 | P0 |
+
+### 2.2 可靠性测试
+- 长时间运行稳定性
+- 异常复位恢复
+- 电源波动容忍度
+- 温度环境适应性
+
+### 2.3 边界测试
+- 传感器数据边界值
+- 通信超时/丢包场景
+- 存储边界条件
+
+---
+
+## 3. 测试用例优先级定义
+
+| 等级 | 定义 | 覆盖率要求 |
+|------|------|-----------|
+| P0 | 核心功能,基本功能,必须通过 | 100% |
+| P1 | 重要功能,异常处理 | 90% |
+| P2 | 一般功能,边界条件 | 70% |
+
+---
+
+## 4. 测试环境需求
+
+### 4.1 硬件环境
+- AI-Box Demo开发板
+- 12V/24V电源模拟器
+- CANoe / 示波器
+- 传感器模拟器
+
+### 4.2 软件环境
+- 交叉编译工具链
+- 调试器 (J-Link/ST-Link)
+- CAN分析工具
+- 网络抓包工具
+
+---
+
+## 5. 测试执行策略
+
+### 5.1 冒烟测试 (每日)
+- 核心功能快速验证
+- 构建完整性检查
+
+### 5.2 完整测试 (迭代里程碑)
+- 全面功能测试
+- 可靠性测试
+- 回归测试
+
+### 5.3 测试报告
+- 每日: 测试进度简报
+- 迭代: 详细测试报告+缺陷统计
+
+---
+
+## 6. 与开发团队协作
+
+- **每日**: 参与晨会,同步测试进展
+- **每周**: 评审测试用例,覆盖新需求
+- **缺陷**: 提交至Gitea缺陷管理,标注复现步骤
+- **评审**: 参与设计评审,从测试角度提供意见
+
+---
+
+*后续将基于具体需求规格书完善各模块详细测试用例*
\ No newline at end of file
diff --git a/test-plan/automation/test_framework.py b/test-plan/automation/test_framework.py
new file mode 100644
index 0000000..6cfbf16
--- /dev/null
+++ b/test-plan/automation/test_framework.py
@@ -0,0 +1,244 @@
+#!/usr/bin/env python3
+"""
+AI-Box Demo 自动化测试框架
+测试工程师: 沙千里
+日期: 2026-03-05
+"""
+
+import pytest
+import time
+import subprocess
+import json
+from datetime import datetime
+from typing import Dict, Any
+
+# ==================== 配置 ====================
+CONFIG = {
+ "device_ip": "192.168.1.100",
+ "serial_port": "/dev/ttyUSB0",
+ "baudrate": 115200,
+ "timeout": 30,
+ "log_path": "./reports/",
+}
+
+# ==================== Fixture ====================
+@pytest.fixture(scope="session")
+def device_connection():
+ """设备连接 Fixture"""
+ # TODO: 实现设备连接
+ conn = {
+ "serial": None,
+ "ssh": None,
+ }
+ yield conn
+ # 清理
+ if conn.get("serial"):
+ conn["serial"].close()
+
+@pytest.fixture(scope="function")
+def test_logger(request):
+ """测试日志 Fixture"""
+ logger = TestLogger(request.node.name)
+ yield logger
+ logger.close()
+
+# ==================== 工具类 ====================
+class TestLogger:
+ def __init__(self, test_name: str):
+ self.test_name = test_name
+ self.start_time = time.time()
+ self.logs = []
+ print(f"[{test_name}] 测试开始")
+
+ def log(self, level: str, message: str):
+ timestamp = datetime.now().strftime("%H:%M:%S.%f")[:-3]
+ entry = f"[{timestamp}] [{level}] {message}"
+ self.logs.append(entry)
+ print(entry)
+
+ def info(self, message: str):
+ self.log("INFO", message)
+
+ def error(self, message: str):
+ self.log("ERROR", message)
+
+ def pass_test(self):
+ duration = time.time() - self.start_time
+ self.log("PASS", f"测试通过 (耗时: {duration:.2f}s)")
+
+ def fail_test(self, reason: str):
+ duration = time.time() - self.start_time
+ self.log("FAIL", f"测试失败: {reason} (耗时: {duration:.2f}s)")
+ raise AssertionError(reason)
+
+ def close(self):
+ duration = time.time() - self.start_time
+ print(f"[{self.test_name}] 测试结束 (总耗时: {duration:.2f}s)")
+
+
+class DeviceController:
+ """设备控制器 - 封装设备操作"""
+
+ @staticmethod
+ def send_command(cmd: str, timeout: int = 10) -> Dict[str, Any]:
+ """发送命令到设备"""
+ try:
+ result = subprocess.run(
+ cmd, shell=True, timeout=timeout,
+ capture_output=True, text=True
+ )
+ return {
+ "success": result.returncode == 0,
+ "stdout": result.stdout,
+ "stderr": result.stderr,
+ "returncode": result.returncode,
+ }
+ except subprocess.TimeoutExpired:
+ return {"success": False, "error": "命令超时"}
+ except Exception as e:
+ return {"success": False, "error": str(e)}
+
+ @staticmethod
+ def check_ping(host: str, count: int = 4) -> bool:
+ """检查设备网络连通性"""
+ result = subprocess.run(
+ f"ping -c {count} {host}",
+ shell=True, capture_output=True
+ )
+ return result.returncode == 0
+
+
+# ==================== 测试基类 ====================
+class BaseTest:
+ """测试基类"""
+
+ def setup_method(self):
+ """每个测试方法前执行"""
+ self.logger = TestLogger(self.__class__.__name__)
+ self.device = DeviceController()
+
+ def teardown_method(self):
+ """每个测试方法后执行"""
+ pass
+
+
+# ==================== 电源管理测试 ====================
+class TestPowerManagement(BaseTest):
+ """电源管理测试类"""
+
+ def test_pm_001_power_on_sequence(self, device_connection, test_logger):
+ """TC-PM-001: 上电时序测试"""
+ test_logger.info("开始上电时序测试")
+
+ # 检查设备响应
+ if DeviceController.check_ping(CONFIG["device_ip"]):
+ test_logger.info("设备已开机")
+ # TODO: 获取启动日志分析时序
+ test_logger.pass_test()
+ else:
+ test_logger.fail_test("设备无响应")
+
+ def test_pm_002_normal_shutdown(self, test_logger):
+ """TC-PM-002: 正常下电流程测试"""
+ test_logger.info("开始正常下电测试")
+ # TODO: 实现下电测试逻辑
+ test_logger.pass_test()
+
+ def test_pm_003_abnormal_power_off(self, test_logger):
+ """TC-PM-003: 异常断电测试"""
+ test_logger.info("开始异常断电测试")
+ # TODO: 实现异常断电测试
+ test_logger.pass_test()
+
+
+# ==================== MCU-SoC通信测试 ====================
+class TestMCUSoCCommunication(BaseTest):
+ """MCU-SoC通信测试类"""
+
+ def test_mcu_001_comm_link_establish(self, test_logger):
+ """TC-MCU-001: 通信链路建立测试"""
+ test_logger.info("开始通信链路建立测试")
+ # TODO: 实现通信链路测试
+ test_logger.pass_test()
+
+ def test_mcu_002_heartbeat(self, test_logger):
+ """TC-MCU-002: 心跳机制验证"""
+ test_logger.info("开始心跳机制测试")
+ # TODO: 实现心跳测试
+ test_logger.pass_test()
+
+ def test_mcu_003_data_integrity(self, test_logger):
+ """TC-MCU-003: 数据传输完整性测试"""
+ test_logger.info("开始数据传输完整性测试")
+ # TODO: 实现数据完整性测试
+ test_logger.pass_test()
+
+
+# ==================== 传感器测试 ====================
+class TestSensors(BaseTest):
+ """传感器测试类"""
+
+ def test_sen_001_temperature_accuracy(self, test_logger):
+ """TC-SEN-001: 温度传感器准确性测试"""
+ test_logger.info("开始温度准确性测试")
+ # TODO: 实现温度测试
+ test_logger.pass_test()
+
+ def test_sen_002_humidity_accuracy(self, test_logger):
+ """TC-SEN-002: 湿度传感器准确性测试"""
+ test_logger.info("开始湿度准确性测试")
+ # TODO: 实现湿度测试
+ test_logger.pass_test()
+
+
+# ==================== 音视频测试 ====================
+class TestAudioVideo(BaseTest):
+ """音视频测试类"""
+
+ def test_av_001_video_capture(self, test_logger):
+ """TC-AV-001: 视频采集功能测试"""
+ test_logger.info("开始视频采集测试")
+ # TODO: 实现视频采集测试
+ test_logger.pass_test()
+
+ def test_av_002_video_recording(self, test_logger):
+ """TC-AV-002: 视频录制功能测试"""
+ test_logger.info("开始视频录制测试")
+ # TODO: 实现视频录制测试
+ test_logger.pass_test()
+
+
+# ==================== 系统集成测试 ====================
+class TestSystemIntegration(BaseTest):
+ """系统集成测试类"""
+
+ def test_sys_001_full_startup(self, test_logger):
+ """TC-SYS-001: 完整启动流程测试"""
+ test_logger.info("开始完整启动流程测试")
+ # TODO: 实现启动流程测试
+ test_logger.pass_test()
+
+ def test_sys_002_module_integration(self, test_logger):
+ """TC-SYS-002: 多模块协同工作测试"""
+ test_logger.info("开始多模块协同测试")
+ # TODO: 实现模块协同测试
+ test_logger.pass_test()
+
+
+# ==================== Pytest配置 ====================
+def pytest_configure(config):
+ """Pytest配置"""
+ config.addinivalue_line(
+ "markers", "smoke: 冒烟测试"
+ )
+ config.addinivalue_line(
+ "markers", "regression: 回归测试"
+ )
+ config.addinivalue_line(
+ "markers", "stress: 压力测试"
+ )
+
+
+if __name__ == "__main__":
+ # 运行测试
+ pytest.main([__file__, "-v", "--html=reports/report.html"])
\ No newline at end of file