171 lines
3.4 KiB
Markdown
171 lines
3.4 KiB
Markdown
|
|
# 云端测试检查表 - Checklist (Cloud)
|
|||
|
|
|
|||
|
|
**测试人员:** ___________
|
|||
|
|
**测试日期:** 2026-01-XX
|
|||
|
|
**系统版本:** v1.0
|
|||
|
|
|
|||
|
|
**使用说明:** 完成一项勾选一项,全部完成后签字
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 环境准备
|
|||
|
|
|
|||
|
|
- [ ] Python 3.8+已安装
|
|||
|
|
- [ ] 依赖已安装(`pip install -r requirements.txt`)
|
|||
|
|
- [ ] 项目目录结构完整
|
|||
|
|
- [ ] 有独立的测试目录(避免污染生产数据)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 基础功能测试
|
|||
|
|
|
|||
|
|
### 服务启动
|
|||
|
|
|
|||
|
|
- [ ] 能成功启动云端服务
|
|||
|
|
- [ ] 启动日志无错误
|
|||
|
|
- [ ] 数据库初始化成功
|
|||
|
|
- [ ] API端点注册成功
|
|||
|
|
- [ ] 监听在正确端口(5000)
|
|||
|
|
|
|||
|
|
**证据文件:** `artifacts/cloud/startup.png`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### API测试
|
|||
|
|
|
|||
|
|
#### `/api/health` - 健康检查
|
|||
|
|
|
|||
|
|
- [ ] 返回状态码200
|
|||
|
|
- [ ] 响应包含 `"status": "healthy"`
|
|||
|
|
- [ ] 响应包含版本号
|
|||
|
|
- [ ] 响应包含时间戳
|
|||
|
|
|
|||
|
|
**证据文件:** `artifacts/cloud/health.json`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
#### `POST /api/upload` - 数据上传
|
|||
|
|
|
|||
|
|
##### 正常场景
|
|||
|
|
|
|||
|
|
- [ ] 使用正确API Key能上传成功
|
|||
|
|
- [ ] 返回状态码200
|
|||
|
|
- [ ] 响应包含 `"status": "success"`
|
|||
|
|
- [ ] 响应包含接收的记录数
|
|||
|
|
- [ ] 云端控制台显示接收日志
|
|||
|
|
|
|||
|
|
**证据文件:** `artifacts/cloud/upload_response.json`
|
|||
|
|
|
|||
|
|
##### 异常场景
|
|||
|
|
|
|||
|
|
- [ ] 错误API Key返回401
|
|||
|
|
- [ ] 缺少必填字段返回400
|
|||
|
|
- [ ] 字段类型错误返回400
|
|||
|
|
- [ ] 错误信息清晰可操作
|
|||
|
|
- [ ] 所有异常都有适当的HTTP状态码(不是500)
|
|||
|
|
|
|||
|
|
**证据文件:** `artifacts/cloud/negative_tests.md`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
#### `GET /api/report/<device>` - 获取报告
|
|||
|
|
|
|||
|
|
- [ ] 有数据时能成功生成报告
|
|||
|
|
- [ ] 返回状态码200
|
|||
|
|
- [ ] 报告包含基础统计
|
|||
|
|
- [ ] 报告包含时间范围
|
|||
|
|
- [ ] 报告包含设备ID
|
|||
|
|
- [ ] 报告文件已保存到 `./reports/` 目录
|
|||
|
|
|
|||
|
|
**证据文件:** `artifacts/cloud/report_sample.json`
|
|||
|
|
|
|||
|
|
##### 边界情况
|
|||
|
|
|
|||
|
|
- [ ] 无数据时返回友好提示
|
|||
|
|
- [ ] 不存在的设备返回404或提示信息
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 数据库功能
|
|||
|
|
|
|||
|
|
- [ ] 能成功创建数据库文件
|
|||
|
|
- [ ] 数据表结构正确
|
|||
|
|
- [ ] 上传数据能正确落库
|
|||
|
|
- [ ] 记录数与上传数一致
|
|||
|
|
- [ ] 时间戳格式正确
|
|||
|
|
- [ ] 能查询已存数据
|
|||
|
|
|
|||
|
|
**证据文件:** `artifacts/cloud/db_check.txt`
|
|||
|
|
|
|||
|
|
##### 数据完整性
|
|||
|
|
|
|||
|
|
- [ ] 重复上传行为符合预期(幂等/累加/拒绝)
|
|||
|
|
- [ ] 数据类型正确(int/float/str)
|
|||
|
|
- [ ] 外键关系正确
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 稳定性测试
|
|||
|
|
|
|||
|
|
- [ ] 连续运行2小时无崩溃
|
|||
|
|
- [ ] 内存使用稳定(无泄漏)
|
|||
|
|
- [ ] CPU占用合理(<50%)
|
|||
|
|
- [ ] 多次上传后性能无明显下降
|
|||
|
|
|
|||
|
|
**证据文件:** `artifacts/cloud/stability.log`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 日志与监控
|
|||
|
|
|
|||
|
|
- [ ] 关键操作有日志记录
|
|||
|
|
- [ ] 日志时间戳正确
|
|||
|
|
- [ ] 错误日志包含堆栈信息
|
|||
|
|
- [ ] 日志格式统一
|
|||
|
|
- [ ] 敏感信息已脱敏(API Key等)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 配置与部署
|
|||
|
|
|
|||
|
|
- [ ] 配置文件结构清晰
|
|||
|
|
- [ ] 可以修改端口
|
|||
|
|
- [ ] 可以修改数据库路径
|
|||
|
|
- [ ] 可以添加/删除API Key
|
|||
|
|
- [ ] 配置变更后能生效
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 文档完整性
|
|||
|
|
|
|||
|
|
- [ ] README说明清晰
|
|||
|
|
- [ ] API文档存在且准确
|
|||
|
|
- [ ] 错误码说明完整
|
|||
|
|
- [ ] 有使用示例
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 总结
|
|||
|
|
|
|||
|
|
### 统计
|
|||
|
|
|
|||
|
|
- 总测试项:XX
|
|||
|
|
- 通过:XX
|
|||
|
|
- 失败:XX
|
|||
|
|
- 阻塞:XX
|
|||
|
|
|
|||
|
|
### P0问题(必须修复)
|
|||
|
|
|
|||
|
|
1. [问题描述 + Bug编号]
|
|||
|
|
2. ...
|
|||
|
|
|
|||
|
|
### 验收结论
|
|||
|
|
|
|||
|
|
- [ ] ✅ 云端基本功能可用,可以进入联调
|
|||
|
|
- [ ] ⚠️ 有问题但不阻塞联调,可以带问题联调
|
|||
|
|
- [ ] ❌ 存在阻塞问题,必须先修复
|
|||
|
|
|
|||
|
|
**签字:**
|
|||
|
|
测试人员:_________ 日期:_________
|
|||
|
|
复核人员:_________ 日期:_________
|