feat: 添加AI-Box测试策略文档及测试用例
- 测试策略文档 (TEST_STRATEGY.md) - 电源管理测试用例 (TC_POWER_MGMT.md) - 7个 - MCU-SoC通信测试用例 (TC_MCU_SOC.md) - 9个 - 传感器测试用例 (TC_SENSORS.md) - 8个 - 音视频测试用例 (TC_AUDIO_VIDEO.md) - 10个 - 系统集成测试用例 (TC_SYSTEM_INTEGRATION.md) - 12个 - 自动化测试框架 (automation/)
This commit is contained in:
parent
044381092c
commit
00d5599a6a
|
|
@ -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*
|
||||||
|
|
@ -0,0 +1,127 @@
|
||||||
|
# 音视频功能测试用例
|
||||||
|
|
||||||
|
**模块**: 音视频 | **优先级**: P1 | **编写**: 沙千里
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-AV-001: 视频采集功能测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-AV-001 |
|
||||||
|
| **测试项** | 摄像头视频采集 |
|
||||||
|
| **前置条件** | 摄像头连接正常 |
|
||||||
|
| **测试步骤** | 1. 启动视频采集<br>2. 观察预览画面<br>3. 验证分辨率/帧率 |
|
||||||
|
| **预期结果** | 画面清晰,符合规格(分辨率/帧率) |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-AV-002: 视频录制功能测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-AV-002 |
|
||||||
|
| **测试项** | 视频录制与存储 |
|
||||||
|
| **前置条件** | 存储设备就绪 |
|
||||||
|
| **测试步骤** | 1. 开始录制视频<br>2. 运行一段时间后停止<br>3. 验证文件完整性 |
|
||||||
|
| **预期结果** | 视频文件可正常播放,无花屏/卡顿 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-AV-003: 视频直播功能测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-AV-003 |
|
||||||
|
| **测试项** | 视频流推送/直播 |
|
||||||
|
| **前置条件** | 网络连接正常,直播服务器就绪 |
|
||||||
|
| **测试步骤** | 1. 启动视频直播<br>2. 在另一端接收视频流<br>3. 验证延迟和流畅度 |
|
||||||
|
| **预期结果** | 延迟<3s,画面流畅 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-AV-004: 音频采集功能测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-AV-004 |
|
||||||
|
| **测试项** | 麦克风音频采集 |
|
||||||
|
| **前置条件** | 麦克风连接正常 |
|
||||||
|
| **测试步骤** | 1. 启动音频采集<br>2. 播放测试声音<br>3. 验证采集质量 |
|
||||||
|
| **预期结果** | 音频清晰,无明显噪音/失真 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-AV-005: 音频播放功能测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-AV-005 |
|
||||||
|
| **测试项** | 扬声器/耳机音频播放 |
|
||||||
|
| **前置条件** | 音频输出设备连接正常 |
|
||||||
|
| **测试步骤** | 1. 播放标准测试音频<br>2. 验证输出质量 |
|
||||||
|
| **预期结果** | 音频清晰,音量适中 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-AV-006: 音视频同步测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-AV-006 |
|
||||||
|
| **测试项** | 音视频同步性 |
|
||||||
|
| **前置条件** | 音视频同时工作 |
|
||||||
|
| **测试步骤** | 1. 录制包含声音的视频<br>2. 播放并检查音画同步 |
|
||||||
|
| **预期结果** | 音视频同步误差<100ms |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-AV-007: 视频编码效率测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-AV-007 |
|
||||||
|
| **测试项** | 视频编码质量与码率 |
|
||||||
|
| **前置条件** | 编码参数可配置 |
|
||||||
|
| **测试步骤** | 1. 设置不同编码参数<br>2. 分析编码后视频质量 |
|
||||||
|
| **预期结果** | 码率与质量符合预期 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-AV-008: 弱光环境视频测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-AV-008 |
|
||||||
|
| **测试项** | 低光照环境视频质量 |
|
||||||
|
| **前置条件** | 可控制光照条件 |
|
||||||
|
| **测试步骤** | 1. 降低环境光照<br>2. 观察视频质量 |
|
||||||
|
| **预期结果** | 仍能看清画面,符合低光规格 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-AV-009: 音视频设备热插拔测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-AV-009 |
|
||||||
|
| **测试项** | USB音视频设备热插拔 |
|
||||||
|
| **前置条件** | USB摄像头/麦克风准备就绪 |
|
||||||
|
| **测试步骤** | 1. 系统运行时插拔设备<br>2. 验证检测和恢复 |
|
||||||
|
| **预期结果** | 能正确识别设备插拔并恢复工作 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-AV-010: 长时间录制测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-AV-010 |
|
||||||
|
| **测试项** | 长时间视频录制稳定性 |
|
||||||
|
| **前置条件** | 存储空间充足 |
|
||||||
|
| **测试步骤** | 1. 开始连续录制<br>2. 运行4小时以上<br>3. 检查文件完整性 |
|
||||||
|
| **预期结果** | 无内存泄漏,文件完整 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*持续更新中...*
|
||||||
|
|
@ -0,0 +1,115 @@
|
||||||
|
# MCU-SoC通信可靠性测试用例
|
||||||
|
|
||||||
|
**模块**: MCU-SoC通信 | **优先级**: P0 | **编写**: 沙千里
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-MCU-001: 通信链路建立测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-MCU-001 |
|
||||||
|
| **测试项** | MCU-SoC通信链路建立 |
|
||||||
|
| **前置条件** | MCU和SoC均上电完成 |
|
||||||
|
| **测试步骤** | 1. 等待系统启动完成<br>2. 验证通信链路状态<br>3. 记录首次通信成功时间 |
|
||||||
|
| **预期结果** | 通信链路在SoC启动后30s内建立成功 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-MCU-002: 心跳机制验证
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-MCU-002 |
|
||||||
|
| **测试项** | 心跳检测机制 |
|
||||||
|
| **前置条件** | 通信链路正常 |
|
||||||
|
| **测试步骤** | 1. 监控心跳报文<br>2. 模拟心跳停止<br>3. 验证超时检测和恢复机制 |
|
||||||
|
| **预期结果** | 心跳超时3s内检测到异常并触发恢复 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-MCU-003: 数据传输完整性测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-MCU-003 |
|
||||||
|
| **测试项** | 指令/数据收发完整性 |
|
||||||
|
| **前置条件** | 通信正常 |
|
||||||
|
| **测试步骤** | 1. 发送1000条测试指令<br>2. 验证响应正确性<br>3. 统计错误率 |
|
||||||
|
| **预期结果** | 错误率 < 0.1% |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-MCU-004: 大数据量传输测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-MCU-004 |
|
||||||
|
| **测试项** | 大数据块传输 |
|
||||||
|
| **前置条件** | 通信正常 |
|
||||||
|
| **测试步骤** | 1. 传输1MB以上数据<br>2. 验证数据完整性(Checksum) |
|
||||||
|
| **预期结果** | 数据完整,无丢失/损坏 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-MCU-005: 通信中断与恢复测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-MCU-005 |
|
||||||
|
| **测试项** | 通信异常自动恢复 |
|
||||||
|
| **前置条件** | 通信正常 |
|
||||||
|
| **测试步骤** | 1. 模拟通信中断(物理断开/软件挂起)<br>2. 观察系统响应<br>3. 验证自动重连 |
|
||||||
|
| **预期结果** | 通信恢复后系统自动恢复正常工作 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-MCU-006: 并发指令处理测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-MCU-006 |
|
||||||
|
| **测试项** | 多指令并发处理 |
|
||||||
|
| **前置条件** | 通信正常 |
|
||||||
|
| **测试步骤** | 1. 同时发送5条以上不同指令<br>2. 验证都能正确响应<br>3. 检查响应顺序 |
|
||||||
|
| **预期结果** | 所有指令按序正确响应,无死锁/乱序 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-MCU-007: 通信超时处理测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-MCU-007 |
|
||||||
|
| **测试项** | 指令响应超时处理 |
|
||||||
|
| **前置条件** | 通信正常 |
|
||||||
|
| **测试步骤** | 1. 发送需要长时间处理的指令<br>2. 验证超时检测<br>3. 验证超时后的处理逻辑 |
|
||||||
|
| **预期结果** | 超时后返回正确错误码,不阻塞系统 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-MCU-008: 通信接口压力测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-MCU-008 |
|
||||||
|
| **测试项** | 高频通信压力测试 |
|
||||||
|
| **前置条件** | 通信正常 |
|
||||||
|
| **测试步骤** | 1. 以10ms间隔连续发送指令<br>2. 运行1小时<br>3. 统计错误率和系统响应 |
|
||||||
|
| **预期结果** | 错误率 < 0.5%,系统无异常 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-MCU-009: 协议兼容性测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-MCU-009 |
|
||||||
|
| **测试项** | 通信协议版本兼容 |
|
||||||
|
| **前置条件** | 多版本固件 |
|
||||||
|
| **测试步骤** | 1. 测试不同MCU与SoC固件版本组合<br>2. 验证兼容性 |
|
||||||
|
| **预期结果** | 主流版本组合兼容 |
|
||||||
|
| **优先级** | P2 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*持续更新中...*
|
||||||
|
|
@ -0,0 +1,91 @@
|
||||||
|
# 电源管理模式切换测试用例
|
||||||
|
|
||||||
|
**模块**: 电源管理 | **优先级**: P0 | **编写**: 沙千里
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-PM-001: 上电时序测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-PM-001 |
|
||||||
|
| **测试项** | 上电时序验证 |
|
||||||
|
| **前置条件** | 设备断电,12V/24V电源准备就绪 |
|
||||||
|
| **测试步骤** | 1. 连接12V电源<br>2. 观察MCU上电初始化<br>3. 观察SoC启动过程<br>4. 记录各阶段时间 |
|
||||||
|
| **预期结果** | MCU在500ms内响应,SoC在5s内启动完成 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-PM-002: 正常下电流程测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-PM-002 |
|
||||||
|
| **测试项** | 正常下电流程 |
|
||||||
|
| **前置条件** | 系统正常运行 |
|
||||||
|
| **测试步骤** | 1. 触发系统关机<br>2. 观察SoC正常关机<br>3. 观察MCU进入低功耗<br>4. 验证存储数据完整性 |
|
||||||
|
| **预期结果** | SoC正常关机后MCU进入低功耗,无数据丢失 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-PM-003: 异常断电测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-PM-003 |
|
||||||
|
| **测试项** | 异常断电保护 |
|
||||||
|
| **前置条件** | 系统正常运行,正在写数据 |
|
||||||
|
| **测试步骤** | 1. 模拟突然断电(直接拔掉电源)<br>2. 重新上电<br>3. 检查数据完整性 |
|
||||||
|
| **预期结果** | 系统能正常恢复,关键数据不丢失 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-PM-004: 低功耗模式切换测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-PM-004 |
|
||||||
|
| **测试项** | 工作→低功耗切换 |
|
||||||
|
| **前置条件** | 系统处于工作模式 |
|
||||||
|
| **测试步骤** | 1. 触发低功耗进入条件(如无操作超时)<br>2. 验证各外设关闭<br>3. 测量功耗 |
|
||||||
|
| **预期结果** | 功耗降至<50mA,符合规格 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-PM-005: 低功耗唤醒测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-PM-005 |
|
||||||
|
| **测试项** | 远程唤醒/定时唤醒 |
|
||||||
|
| **前置条件** | 系统处于低功耗模式 |
|
||||||
|
| **测试步骤** | 1. 发送唤醒信号/等待定时唤醒<br>2. 验证系统正常恢复<br>3. 验证数据连续性 |
|
||||||
|
| **预期结果** | 唤醒成功,系统恢复正常工作状态 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-PM-006: 电源模式切换边界测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-PM-006 |
|
||||||
|
| **测试项** | 电压波动容忍度 |
|
||||||
|
| **前置条件** | 电源可调 |
|
||||||
|
| **测试步骤** | 1. 设置输入电压范围(9V-36V)<br>2. 验证各电压下系统工作正常 |
|
||||||
|
| **预期结果** | 9V-36V范围内系统稳定工作 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-PM-007: 电源管理异常恢复
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-PM-007 |
|
||||||
|
| **测试项** | 电源异常自动恢复 |
|
||||||
|
| **前置条件** | 可模拟电源异常 |
|
||||||
|
| **测试步骤** | 1. 模拟电压瞬降/瞬升<br>2. 观察系统行为<br>3. 验证恢复正常 |
|
||||||
|
| **预期结果** | 系统能自动恢复或安全关机 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*持续更新中...*
|
||||||
|
|
@ -0,0 +1,115 @@
|
||||||
|
# 传感器数据准确性验证测试用例
|
||||||
|
|
||||||
|
**模块**: 传感器数据 | **优先级**: P1 | **编写**: 沙千里
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SEN-001: 温度传感器准确性测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SEN-001 |
|
||||||
|
| **测试项** | 温度数据采集准确性 |
|
||||||
|
| **前置条件** | 温度传感器就绪,可获取参考温度计 |
|
||||||
|
| **测试步骤** | 1. 设置标准温度环境(如0°C, 25°C, 40°C)<br>2. 等待传感器稳定<br>3. 对比采集值与参考值 |
|
||||||
|
| **预期结果** | 误差在±2°C以内 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SEN-002: 湿度传感器准确性测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SEN-002 |
|
||||||
|
| **测试项** | 湿度数据采集准确性 |
|
||||||
|
| **前置条件** | 湿度传感器就绪,湿度环境可控 |
|
||||||
|
| **测试步骤** | 1. 设置不同湿度(30%, 60%, 90%RH)<br>2. 对比采集值与参考值 |
|
||||||
|
| **预期结果** | 误差在±5%RH以内 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SEN-003: 加速度传感器准确性测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SEN-003 |
|
||||||
|
| **测试项** | 加速度/振动数据采集 |
|
||||||
|
| **前置条件** | 加速度传感器就绪,可控制运动状态 |
|
||||||
|
| **测试步骤** | 1. 静止状态验证零漂<br>2. 已知加速度验证准确性<br>3. 振动频率响应测试 |
|
||||||
|
| **预期结果** | 静态零漂<0.1g,动态误差<5% |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SEN-004: 传感器数据更新率测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SEN-004 |
|
||||||
|
| **测试项** | 传感器数据刷新频率 |
|
||||||
|
| **前置条件** | 传感器正常工作 |
|
||||||
|
| **测试步骤** | 1. 记录连续数据帧的时间戳<br>2. 计算实际更新率 |
|
||||||
|
| **预期结果** | 符合规格要求(如≥1Hz) |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SEN-005: 传感器异常检测测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SEN-005 |
|
||||||
|
| **测试项** | 传感器异常检测能力 |
|
||||||
|
| **前置条件** | 传感器正常工作 |
|
||||||
|
| **测试步骤** | 1. 模拟传感器故障(短路/断路)<br>2. 验证系统检测和告警 |
|
||||||
|
| **预期结果** | 异常能被检测并上报 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SEN-006: 多传感器数据一致性测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SEN-006 |
|
||||||
|
| **测试项** | 多传感器数据同步 |
|
||||||
|
| **前置条件** | 多个传感器同时工作 |
|
||||||
|
| **测试步骤** | 1. 同时获取多传感器数据<br>2. 验证时间戳一致性<br>3. 验证数据关联性 |
|
||||||
|
| **预期结果** | 时间差<100ms,数据逻辑一致 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SEN-007: 传感器数据边界测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SEN-007 |
|
||||||
|
| **测试项** | 传感器量程边界测试 |
|
||||||
|
| **前置条件** | 可模拟极端环境 |
|
||||||
|
| **测试步骤** | 1. 超出规格的温度/湿度/加速度<br>2. 验证数据输出和异常处理 |
|
||||||
|
| **预期结果** | 正确上报超量程或限幅 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SEN-008: 传感器长期稳定性测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SEN-008 |
|
||||||
|
| **测试项** | 传感器漂移测试 |
|
||||||
|
| **前置条件** | 传感器正常,长期测试环境就绪 |
|
||||||
|
| **测试步骤** | 1. 连续运行72小时<br>2. 记录数据变化趋势<br>3. 分析漂移情况 |
|
||||||
|
| **预期结果** | 漂移在允许范围内 |
|
||||||
|
| **优先级** | P2 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SEN-009: 传感器数据处理算法测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SEN-009 |
|
||||||
|
| **测试项** | 数据滤波/融合算法验证 |
|
||||||
|
| **前置条件** | 具备原始数据和算法输出 |
|
||||||
|
| **测试步骤** | 1. 输入标准测试数据<br>2. 验证算法输出正确性 |
|
||||||
|
| **预期结果** | 输出符合算法规格 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*持续更新中...*
|
||||||
|
|
@ -0,0 +1,149 @@
|
||||||
|
# 系统集成测试方案
|
||||||
|
|
||||||
|
**模块**: 系统集成 | **优先级**: P0 | **编写**: 沙千里
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SYS-001: 完整启动流程测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SYS-001 |
|
||||||
|
| **测试项** | 上电到业务就绪全流程 |
|
||||||
|
| **前置条件** | 设备断电 |
|
||||||
|
| **测试步骤** | 1. 上电<br>2. 观察各模块初始化<br>3. 验证业务就绪状态 |
|
||||||
|
| **预期结果** | 各阶段正常,无报错,业务可用 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SYS-002: 多模块协同工作测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SYS-002 |
|
||||||
|
| **测试项** | 传感器+音视频+通信协同 |
|
||||||
|
| **前置条件** | 各模块正常工作 |
|
||||||
|
| **测试步骤** | 1. 同时启用所有功能<br>2. 观察系统负载和稳定性 |
|
||||||
|
| **预期结果** | 各功能正常运行,无冲突 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SYS-003: 异常恢复集成测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SYS-003 |
|
||||||
|
| **测试项** | 各模块异常后的系统恢复 |
|
||||||
|
| **前置条件** | 系统正常运行 |
|
||||||
|
| **测试步骤** | 1. 依次模拟各模块异常<br>2. 验证系统检测和恢复 |
|
||||||
|
| **预期结果** | 模块恢复后系统正常运转 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SYS-004: 系统资源压力测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SYS-004 |
|
||||||
|
| **测试项** | CPU/内存/网络资源压力 |
|
||||||
|
| **前置条件** | 压力测试工具就绪 |
|
||||||
|
| **测试步骤** | 1. 施加持续压力<br>2. 监控资源使用<br>3. 验证系统稳定性 |
|
||||||
|
| **预期结果** | 系统不崩溃,功能正常降级 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SYS-005: 系统更新升级测试
|
||||||
|
| **用例ID** | TC-SYS-005 |
|
||||||
|
| **测试项** | 固件/软件在线升级 |
|
||||||
|
| **前置条件** | 升级包准备就绪 |
|
||||||
|
| **测试步骤** | 1. 执行OTA/本地升级<br>2. 验证升级过程<br>3. 验证升级后功能 |
|
||||||
|
| **预期结果** | 升级成功,功能正常 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SYS-006: 数据存储与持久化测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SYS-006 |
|
||||||
|
| **测试项** | 关键数据持久化存储 |
|
||||||
|
| **前置条件** | 存储正常 |
|
||||||
|
| **测试步骤** | 1. 写入配置/业务数据<br>2. 重启系统<br>3. 验证数据恢复 |
|
||||||
|
| **预期结果** | 数据完整恢复 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SYS-007: 系统日志完整性测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SYS-007 |
|
||||||
|
| **测试项** | 系统运行日志记录 |
|
||||||
|
| **前置条件** | 日志系统就绪 |
|
||||||
|
| **测试步骤** | 1. 执行各种操作<br>2. 检查日志完整性 |
|
||||||
|
| **预期结果** | 日志记录完整可追溯 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SYS-008: 网络通信集成测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SYS-008 |
|
||||||
|
| **测试项** | 4G/5G/WiFi通信与业务集成 |
|
||||||
|
| **前置条件** | 网络模块正常 |
|
||||||
|
| **测试步骤** | 1. 测试各网络模式<br>2. 验证业务数据传输 |
|
||||||
|
| **预期结果** | 网络正常时业务可用 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SYS-009: 低温启动测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SYS-009 |
|
||||||
|
| **测试项** | 低温环境(-20°C)启动 |
|
||||||
|
| **前置条件** | 温控箱就绪 |
|
||||||
|
| **测试步骤** | 1. 降温到-20°C<br>2. 上电启动<br>3. 验证功能 |
|
||||||
|
| **预期结果** | 能正常启动并工作 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SYS-010: 高温运行环境测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SYS-010 |
|
||||||
|
| **测试项** | 高温环境(+70°C)运行 |
|
||||||
|
| **前置条件** | 温控箱就绪 |
|
||||||
|
| **测试步骤** | 1. 升温到+70°C<br>2. 持续运行测试<br>3. 验证功能 |
|
||||||
|
| **预期结果** | 能稳定运行不过热降频 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SYS-011: 振动环境测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SYS-011 |
|
||||||
|
| **测试项** | 车载振动环境适应性 |
|
||||||
|
| **前置条件** | 振动台就绪 |
|
||||||
|
| **测试步骤** | 1. 按车载标准振动<br>2. 验证功能正常 |
|
||||||
|
| **预期结果** | 无连接松动,功能正常 |
|
||||||
|
| **优先级** | P1 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## TC-SYS-012: 电源波动集成测试
|
||||||
|
| 项目 | 内容 |
|
||||||
|
|------|------|
|
||||||
|
| **用例ID** | TC-SYS-012 |
|
||||||
|
| **测试项** | 车载电源波动适应性 |
|
||||||
|
| **前置条件** | 电源模拟器就绪 |
|
||||||
|
| **测试步骤** | 1. 模拟抛负载/启停等波形<br>2. 验证系统稳定 |
|
||||||
|
| **预期结果** | 系统正常运行或安全关机 |
|
||||||
|
| **优先级** | P0 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*持续更新中...*
|
||||||
|
|
@ -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缺陷管理,标注复现步骤
|
||||||
|
- **评审**: 参与设计评审,从测试角度提供意见
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*后续将基于具体需求规格书完善各模块详细测试用例*
|
||||||
|
|
@ -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"])
|
||||||
Loading…
Reference in New Issue