测试计划
智能待办事项(To-Do List)管理系统测试计划
版本:1.4
日期:2025-04-11
一、引言
- 项目背景
本系统旨在为用户提供智能化的任务管理服务,支持任务创建、分类、提醒及多端数据同步功能,目标用户为学生、开发者和团队,通过情感化设计和AI推荐提升用户体验。 -
参考资料
- 测试术语
- 黑盒测试:基于功能需求验证输入输出是否符合预期。
- 压力测试:模拟高并发场景检验系统稳定性。
- 同步延迟:数据在多端同步所需的时间阈值(目标≤2秒)。
二、任务概述
- 测试范围
- 功能测试:任务管理(增删改查)、自动分类、提醒推送、跨端同步。
- 兼容性测试:Chrome/Edge浏览器;Windows 10/11桌面端。
- 性能测试:500并发任务处理、同步延迟≤2秒、提醒准时率100%。
- 安全性测试:用户数据加密存储、权限控制(仅所有者可修改任务)。
- 测试目标
- 确保核心功能符合需求,无阻塞性缺陷。
- 验证多端数据一致性及同步稳定性。
- 达到用户量基础目标(500人)下的系统可用性。
三、测试策略
3.1 测试人员需求与分工
角色 | 人员 | 职责 |
---|---|---|
前端测试工程师 | 黄熙儿、杨子俊 | 负责 Vue.js 前端功能测试、组件单元测试、跨浏览器兼容性测试。 |
后端测试工程师 | 夏钦涛、吴其锦 | 负责 Spring Boot 接口测试、数据库操作验证、性能压测。 |
自动化测试工程师 | 黄娟英 | 使用 Selenium/Cypress 实现端到端自动化测试,集成 CI/CD 流程。 |
系统测试工程师 | 钟鸣、袁卓妍 | 负责多端同步测试、提醒推送验证、用户权限管理测试。 |
3.2 测试方法
测试类型 | 方法/工具 | 说明 |
---|---|---|
前端功能测试 | 手动测试 + Vue Test Utils | 验证 Vue 组件渲染逻辑、用户交互(如任务增删改查)、表单校验。 |
后端单元测试 | JUnit 5 + Mockito | 测试 Spring Boot 业务逻辑(如分类算法、提醒调度)、DAO 层数据操作。 |
接口测试 | RestAssured + Postman | 验证 RESTful API 的请求响应、状态码、数据一致性。 |
自动化测试 | Cypress + Selenium | 模拟用户端到端操作(如登录-创建任务-同步-提醒),覆盖核心业务流程。 |
性能测试 | JMeter + Gatling | 模拟高并发用户操作(如 100 用户同时添加任务),测试 API 吞吐量。 |
安全测试 | OWASP ZAP + Spring Security 测试 | 检查 XSS、CSRF 漏洞,验证用户权限控制(如 JWT 鉴权)。 |
3.3 工具引用及测试培训
- 工具引用:
- 后端测试:JUnit 5(单元测试)、RestAssured(接口测试)、H2 内存数据库(隔离测试环境)。
- 前端测试:Cypress(端到端测试)、Jest(单元测试)。
3.4 测试阶段计划
阶段 | 工作内容 | 人员安排 |
---|---|---|
单元测试 | - Vue 组件单测(任务列表渲染、表单提交) - Spring Boot 业务逻辑单测(分类算法、提醒触发) | 黄熙儿、夏钦涛 |
集成测试 | - 前后端接口联调(任务创建与同步) - Spring Boot 与 MySQL 集成测试 | 杨子俊、袁卓妍 |
系统测试 | - 端到端业务流程测试(登录-任务管理-提醒推送) - 性能压测(500 并发用户) | 吴其锦、钟鸣 |
验收测试 | - 用户试用反馈收集(500 人基础目标) - 修复关键缺陷并复测 | 全员参与 |
3.5 测试停止及恢复条件
- 停止条件:
- 后端核心接口(如任务同步)返回 500 错误或响应时间 > 5 秒。
- 前端 Vue 路由守卫失效(如未登录用户可访问任务列表)。
- 恢复条件:
- 修复 Spring Boot 接口逻辑并验证通过。
- 重新执行关联的端到端测试用例。
3.6 测试文档及缺陷管理
- 测试文档:
- 测试用例:使用 TestRail 管理,按模块分类(用户管理、任务管理、同步服务)。
- 测试报告:通过 Allure 生成可视化报告(集成 JUnit 和 RestAssured)。
- 缺陷管理:
- 工具:JIRA(标记为 前端/后端-Java/同步/安全)。
- 流程:测试人员提交缺陷 → 开发修复 → 测试验证 → 关闭。
3.7 测试环境
环境类型 | 配置 |
---|---|
前端环境 | - Node.js v16+、Vue CLI 5.x、Chrome 100+ - 桌面端:Windows 10 + .NET 6 |
后端环境 | - Java 17、Spring Boot 3.x、MySQL 8.0 - 服务器:Tomcat 10 + Docker 容器化部署 |
四、测试资源
4.1 硬件资源需求
- 测试服务器:AWS EC2 实例(4核 CPU/8GB RAM/50GB SSD)。
- 客户端设备:
- Web 端:3 台 Windows PC、2 台 MacBook。
- 桌面端:2 台 Windows 10/11 物理机。
4.2 软件资源需求
- 后端:IntelliJ IDEA(开发工具)、JMeter 5.5、Postman。
- 前端:VSCode + Vue Devtools、Cypress 12.0+。
4.3 测试环境需求
- 数据库:测试使用 H2 内存数据库(单元测试)与 MySQL 8.0(集成测试)。
- 网络环境:使用 Charles Proxy 模拟高延迟、断网场景。
4.4 测试人员需求
- 专职测试人员:4 人(2 前端测试、2 后端测试)。
- 开发支持:2 人(协助调试复杂场景)。
4.5 其他资源
- 测试数据生成:使用 Java Faker 库生成模拟任务数据。
五、风险评估
风险类型 | 描述 | 应对措施 |
---|---|---|
技术风险 | Spring Boot 依赖冲突导致启动失败 | 统一管理 Maven 依赖版本,每日构建验证。 |
协作风险 | 前后端接口定义变更未及时同步 | 使用 Swagger 维护实时 API 文档,每日晨会确认接口状态。 |
环境风险 | Docker 容器化部署与物理机环境差异 | 在物理机和容器环境并行测试关键功能。 |
人力风险 | Java 测试工程师对 Spring Boot 不熟悉 | 安排结对编程,由开发人员(袁卓妍)指导测试代码编写。 |
安全风险 | JWT 令牌泄露导致越权访问 | 使用 OWASP ZAP 扫描接口,增加 Token 有效期和刷新机制测试。 |
六、补充说明
- 后端技术适配:
- Spring Boot 的单元测试需覆盖 Service 层逻辑和 Controller 层接口。
- 使用 Testcontainers 验证 MySQL 集成操作的真实性。
- 持续集成:
- Jenkins 流水线集成 Maven 构建、JUnit 测试、Allure 报告生成。
- 监控与日志:
- 测试环境集成 ELK(Elasticsearch + Logstash + Kibana)追踪接口调用日志。