647 lines
18 KiB
Markdown
647 lines
18 KiB
Markdown
# Ether 集成测试用例详细设计
|
||
|
||
**文档版本**: v1.0
|
||
**创建日期**: 2026-02-14
|
||
**关联文档**: [集成测试方案](./集成测试方案.md)
|
||
|
||
---
|
||
|
||
## 一、业务流程集成测试用例
|
||
|
||
### 1.1 工单管理模块集成测试
|
||
|
||
#### TC-INT-WORK-001: 工单完整生命周期测试
|
||
|
||
**测试目标**: 验证工单从创建到关闭的完整流程正确性
|
||
|
||
**前置条件**:
|
||
- 已登录项目管理员账号
|
||
- 项目已创建并选中
|
||
- 已创建测试用户(处理人)
|
||
|
||
**测试步骤**:
|
||
|
||
| 步骤 | 操作 | 输入数据 | 期望结果 |
|
||
|------|------|----------|----------|
|
||
| 1 | 创建工单 | 类型:REPAIR, 标题:"空调维修", 优先级:HIGH | 工单创建成功,状态:CREATED,生成工单编号 |
|
||
| 2 | 验证流程记录 | - | 生成一条流程记录,操作:创建 |
|
||
| 3 | 分配工单 | 处理人ID:assignee-001 | 分配成功,状态:ASSIGNED |
|
||
| 4 | 验证流程记录 | - | 生成一条流程记录,操作:分配 |
|
||
| 5 | 接受工单 | - | 接受成功,状态:ACCEPTED |
|
||
| 6 | 开始处理 | - | 开始成功,状态:IN_PROGRESS |
|
||
| 7 | 完成工单 | 结果描述:"已更换压缩机" | 完成成功,状态:COMPLETED |
|
||
| 8 | 验收通过 | 评分:5, 评价:"处理及时" | 验收成功,状态:CLOSED |
|
||
| 9 | 验证最终状态 | - | 状态:CLOSED,关闭时间已记录 |
|
||
|
||
**验证点**:
|
||
- [ ] 工单编号格式正确: WO-YYYYMMDD-序号
|
||
- [ ] 每次状态变更都生成流程记录
|
||
- [ ] 流程记录包含操作人、操作时间、操作内容
|
||
- [ ] 工单各时间字段正确记录(创建时间、分配时间、完成时间、关闭时间)
|
||
- [ ] 通知消息正确发送
|
||
|
||
---
|
||
|
||
#### TC-INT-WORK-002: 工单转派流程测试
|
||
|
||
**测试目标**: 验证工单转派功能正确性
|
||
|
||
**测试步骤**:
|
||
|
||
| 步骤 | 操作 | 输入数据 | 期望结果 |
|
||
|------|------|----------|----------|
|
||
| 1 | 创建并分配工单 | 处理人:user-A | 状态:ASSIGNED |
|
||
| 2 | 转派工单 | 新处理人:user-B, 原因:"技能不匹配" | 转派成功,处理人更新为user-B |
|
||
| 3 | 验证流程记录 | - | 记录转派操作,包含原处理人和新处理人 |
|
||
| 4 | 验证通知 | - | user-A收到转出通知,user-B收到分配通知 |
|
||
|
||
---
|
||
|
||
#### TC-INT-WORK-003: 工单挂起恢复测试
|
||
|
||
**测试目标**: 验证工单挂起和恢复功能
|
||
|
||
**测试步骤**:
|
||
|
||
| 步骤 | 操作 | 输入数据 | 期望结果 |
|
||
|------|------|----------|----------|
|
||
| 1 | 创建并开始处理工单 | - | 状态:IN_PROGRESS |
|
||
| 2 | 挂起工单 | 原因:"等待配件到货" | 状态:SUSPENDED |
|
||
| 3 | 验证挂起时间 | - | 挂起时间已记录 |
|
||
| 4 | 恢复工单 | - | 状态:ASSIGNED |
|
||
| 5 | 继续处理 | - | 可以正常处理 |
|
||
|
||
---
|
||
|
||
#### TC-INT-WORK-004: 工单退回重分配测试
|
||
|
||
**测试目标**: 验证工单退回后重新分配流程
|
||
|
||
**测试步骤**:
|
||
|
||
| 步骤 | 操作 | 输入数据 | 期望结果 |
|
||
|------|------|----------|----------|
|
||
| 1 | 创建并分配工单 | 处理人:user-A | 状态:ASSIGNED |
|
||
| 2 | 接受工单 | - | 状态:ACCEPTED |
|
||
| 3 | 退回工单 | 原因:"技术能力不足" | 状态:RETURNED,处理人清空 |
|
||
| 4 | 重新分配 | 新处理人:user-B | 状态:ASSIGNED |
|
||
| 5 | 验证流程记录 | - | 包含退回和重新分配记录 |
|
||
|
||
---
|
||
|
||
#### TC-INT-WORK-005: 工单验收不通过测试
|
||
|
||
**测试目标**: 验证验收不通过后工单状态回退
|
||
|
||
**测试步骤**:
|
||
|
||
| 步骤 | 操作 | 输入数据 | 期望结果 |
|
||
|------|------|----------|----------|
|
||
| 1 | 创建并完成工单 | - | 状态:COMPLETED |
|
||
| 2 | 验收不通过 | 原因:"问题未完全解决" | 状态:IN_PROGRESS |
|
||
| 3 | 验证通知 | - | 处理人收到重新处理通知 |
|
||
| 4 | 重新完成 | - | 状态:COMPLETED |
|
||
| 5 | 再次验收通过 | - | 状态:CLOSED |
|
||
|
||
---
|
||
|
||
### 1.2 设备管理模块集成测试
|
||
|
||
#### TC-INT-ASSET-001: 设备报修流程测试
|
||
|
||
**测试目标**: 验证设备与工单关联正确性
|
||
|
||
**测试步骤**:
|
||
|
||
| 步骤 | 操作 | 输入数据 | 期望结果 |
|
||
|------|------|----------|----------|
|
||
| 1 | 创建设备 | 名称:"空调-001", 位置:"A栋1楼", 状态:NORMAL | 设备创建成功 |
|
||
| 2 | 生成二维码 | - | 生成设备二维码 |
|
||
| 3 | 扫码创建工单 | 设备ID | 工单自动关联设备 |
|
||
| 4 | 处理工单 | - | 工单状态:IN_PROGRESS |
|
||
| 5 | 验证设备状态 | - | 设备状态:MAINTENANCE |
|
||
| 6 | 完成工单 | - | 工单状态:COMPLETED |
|
||
| 7 | 验证设备状态 | - | 设备状态:NORMAL |
|
||
| 8 | 查询设备维修历史 | - | 显示本次维修记录 |
|
||
|
||
---
|
||
|
||
#### TC-INT-ASSET-002: 设备维修历史统计测试
|
||
|
||
**测试目标**: 验证设备维修历史统计准确性
|
||
|
||
**测试步骤**:
|
||
|
||
| 步骤 | 操作 | 输入数据 | 期望结果 |
|
||
|------|------|----------|----------|
|
||
| 1 | 创建设备 | - | 设备ID:equip-001 |
|
||
| 2 | 创建3个维修工单并完成 | - | 3条维修记录 |
|
||
| 3 | 查询维修统计 | 设备ID:equip-001 | 维修次数:3 |
|
||
| 4 | 验证平均维修时长 | - | 计算正确 |
|
||
| 5 | 验证故障类型分布 | - | 统计正确 |
|
||
|
||
---
|
||
|
||
### 1.3 巡检管理模块集成测试
|
||
|
||
#### TC-INT-INSP-001: 巡检计划执行流程测试
|
||
|
||
**测试目标**: 验证巡检计划到任务执行的完整流程
|
||
|
||
**测试步骤**:
|
||
|
||
| 步骤 | 操作 | 输入数据 | 期望结果 |
|
||
|------|------|----------|----------|
|
||
| 1 | 创建巡检计划 | 名称:"日常巡检", 周期:DAILY | 计划创建成功 |
|
||
| 2 | 添加巡检点 | 点位列表 | 巡检点添加成功 |
|
||
| 3 | 生成巡检任务 | - | 生成当日任务 |
|
||
| 4 | 执行巡检 | 结果:正常 | 记录巡检结果 |
|
||
| 5 | 上报异常 | 异常描述:"发现漏水" | 创建异常记录 |
|
||
| 6 | 自动创建工单 | - | 工单自动创建并关联巡检记录 |
|
||
|
||
---
|
||
|
||
#### TC-INT-INSP-002: 巡检异常转工单测试
|
||
|
||
**测试目标**: 验证巡检异常自动转工单功能
|
||
|
||
**测试步骤**:
|
||
|
||
| 步骤 | 操作 | 输入数据 | 期望结果 |
|
||
|------|------|----------|----------|
|
||
| 1 | 执行巡检并上报异常 | 异常类型:设备故障 | 异常记录创建 |
|
||
| 2 | 验证工单自动创建 | - | 工单类型:INSPECT, 关联巡检记录 |
|
||
| 3 | 处理工单 | - | 工单状态更新 |
|
||
| 4 | 验证巡检记录状态 | - | 异常状态:已处理 |
|
||
|
||
---
|
||
|
||
### 1.4 投诉建议模块集成测试
|
||
|
||
#### TC-INT-COMP-001: 投诉处理完整流程测试
|
||
|
||
**测试目标**: 验证投诉从提交到关闭的完整流程
|
||
|
||
**测试步骤**:
|
||
|
||
| 步骤 | 操作 | 输入数据 | 期望结果 |
|
||
|------|------|----------|----------|
|
||
| 1 | 提交投诉 | 内容:"噪音扰民", 类型:环境投诉 | 投诉创建成功 |
|
||
| 2 | 指派处理人 | 处理人:staff-001 | 指派成功 |
|
||
| 3 | 处理投诉 | 处理结果:"已沟通协调" | 处理完成 |
|
||
| 4 | 回复用户 | 回复内容 | 用户收到回复 |
|
||
| 5 | 用户评价 | 评分:4 | 评价记录保存 |
|
||
| 6 | 关闭投诉 | - | 状态:CLOSED |
|
||
|
||
---
|
||
|
||
### 1.5 满意度调查模块集成测试
|
||
|
||
#### TC-INT-SAT-001: 满意度调查完整流程测试
|
||
|
||
**测试目标**: 验证满意度调查从创建到统计的完整流程
|
||
|
||
**测试步骤**:
|
||
|
||
| 步骤 | 操作 | 输入数据 | 期望结果 |
|
||
|------|------|----------|----------|
|
||
| 1 | 创建满意度调查 | 标题:"物业服务满意度调查" | 调查创建成功 |
|
||
| 2 | 添加问题 | 问题列表 | 问题添加成功 |
|
||
| 3 | 发布调查 | 目标用户列表 | 发送调查邀请 |
|
||
| 4 | 用户填写调查 | 评分和意见 | 回应保存成功 |
|
||
| 5 | 统计分析 | - | 统计数据正确 |
|
||
| 6 | 导出报告 | - | 报告生成成功 |
|
||
|
||
---
|
||
|
||
### 1.6 问卷调查模块集成测试
|
||
|
||
#### TC-INT-QUE-001: 问卷调查完整流程测试
|
||
|
||
**测试目标**: 验证问卷调查从创建到分析的完整流程
|
||
|
||
**测试步骤**:
|
||
|
||
| 步骤 | 操作 | 输入数据 | 期望结果 |
|
||
|------|------|----------|----------|
|
||
| 1 | 创建问卷 | 标题:"业主需求调研" | 问卷创建成功 |
|
||
| 2 | 添加题目 | 题目列表(单选、多选、填空) | 题目添加成功 |
|
||
| 3 | 发布问卷 | - | 发布成功 |
|
||
| 4 | 用户填写 | 答案数据 | 回应保存成功 |
|
||
| 5 | 统计分析 | - | 各题目统计正确 |
|
||
| 6 | 导出数据 | - | Excel导出成功 |
|
||
|
||
---
|
||
|
||
### 1.7 智能派单模块集成测试
|
||
|
||
#### TC-INT-DISP-001: 智能派单算法测试
|
||
|
||
**测试目标**: 验证智能派单算法正确性
|
||
|
||
**测试步骤**:
|
||
|
||
| 步骤 | 操作 | 输入数据 | 期望结果 |
|
||
|------|------|----------|----------|
|
||
| 1 | 配置派单规则 | 规则:技能匹配+距离优先 | 规则保存成功 |
|
||
| 2 | 设置员工技能 | 员工A:空调维修, 员工B:水电维修 | 技能设置成功 |
|
||
| 3 | 设置员工位置 | 员工A:位置1, 员工B:位置2 | 位置更新成功 |
|
||
| 4 | 创建空调维修工单 | 位置:位置1附近 | 自动分配给员工A |
|
||
| 5 | 验证分配结果 | - | 分配给技能匹配且距离最近的员工 |
|
||
|
||
---
|
||
|
||
## 二、边界条件集成测试用例
|
||
|
||
### 2.1 数据边界测试
|
||
|
||
#### TC-BOUND-DATA-001: 字符串长度边界测试
|
||
|
||
**测试数据**:
|
||
|
||
| 字段 | 最小值 | 最大值 | 超限值 | 期望结果 |
|
||
|------|--------|--------|--------|----------|
|
||
| 工单标题 | 1字符 | 100字符 | 101字符 | 超限拒绝 |
|
||
| 工单描述 | 0字符(可选) | 2000字符 | 2001字符 | 超限拒绝 |
|
||
| 用户名 | 3字符 | 50字符 | 51字符 | 超限拒绝 |
|
||
| 密码 | 8字符 | 100字符 | 7字符 | 不满足复杂度拒绝 |
|
||
|
||
**测试步骤**:
|
||
1. 测试最小边界值: 输入最小允许值,验证成功
|
||
2. 测试最大边界值: 输入最大允许值,验证成功
|
||
3. 测试超限值: 输入超限值,验证拒绝并提示错误
|
||
|
||
---
|
||
|
||
#### TC-BOUND-DATA-002: 数值边界测试
|
||
|
||
**测试数据**:
|
||
|
||
| 字段 | 最小值 | 最大值 | 无效值 | 期望结果 |
|
||
|------|--------|--------|--------|----------|
|
||
| 分页页码 | 1 | MAX_INT | 0, -1 | 无效值拒绝 |
|
||
| 每页条数 | 1 | 100 | 0, 101 | 无效值拒绝 |
|
||
| 评分 | 1 | 5 | 0, 6 | 无效值拒绝 |
|
||
| 优先级 | 1(LOW) | 4(URGENT) | 5 | 无效值拒绝 |
|
||
|
||
---
|
||
|
||
#### TC-BOUND-DATA-003: 日期时间边界测试
|
||
|
||
**测试场景**:
|
||
|
||
| 场景 | 输入 | 期望结果 |
|
||
|------|------|----------|
|
||
| 开始日期等于结束日期 | same_date ~ same_date | 允许,查询当天 |
|
||
| 开始日期大于结束日期 | 2026-02-15 ~ 2026-02-10 | 拒绝,提示日期范围错误 |
|
||
| 跨年查询 | 2025-01-01 ~ 2026-12-31 | 允许,返回范围内数据 |
|
||
| 未来日期 | 2030-01-01 ~ 2030-12-31 | 允许(预约场景) |
|
||
| 历史日期限制 | 1900-01-01 | 根据业务规则处理 |
|
||
|
||
---
|
||
|
||
#### TC-BOUND-DATA-004: 并发数量边界测试
|
||
|
||
**测试场景**:
|
||
|
||
| 场景 | 边界值 | 期望结果 |
|
||
|------|--------|----------|
|
||
| 单用户最大会话数 | 3 | 第4个会话拒绝或踢出最早会话 |
|
||
| 单项目最大成员数 | 100 | 第101个成员拒绝添加 |
|
||
| 单工单最大附件数 | 10 | 第11个附件拒绝上传 |
|
||
| 单次批量操作数 | 100 | 第101个拒绝或分批处理 |
|
||
|
||
---
|
||
|
||
### 2.2 状态边界测试
|
||
|
||
#### TC-BOUND-STATE-001: 工单状态非法转换测试
|
||
|
||
**测试矩阵**:
|
||
|
||
| 当前状态 | 尝试操作 | 期望结果 |
|
||
|----------|----------|----------|
|
||
| CREATED | 开始处理 | 拒绝,需要先分配 |
|
||
| ASSIGNED | 完成 | 拒绝,需要先接受并开始 |
|
||
| IN_PROGRESS | 验收 | 拒绝,需要先完成 |
|
||
| COMPLETED | 开始处理 | 拒绝,需要先验收不通过 |
|
||
| CLOSED | 任何操作 | 拒绝,工单已关闭 |
|
||
| SUSPENDED | 完成 | 拒绝,需要先恢复 |
|
||
|
||
---
|
||
|
||
#### TC-BOUND-STATE-002: 用户状态边界测试
|
||
|
||
| 当前状态 | 尝试操作 | 期望结果 |
|
||
|----------|----------|----------|
|
||
| LOCKED | 登录 | 拒绝,提示账号已锁定 |
|
||
| DISABLED | 登录 | 拒绝,提示账号已禁用 |
|
||
| ACTIVE | 重复登录 | 根据配置处理(允许多设备或踢出) |
|
||
|
||
---
|
||
|
||
#### TC-BOUND-STATE-003: 项目状态边界测试
|
||
|
||
| 当前状态 | 尝试操作 | 期望结果 |
|
||
|----------|----------|----------|
|
||
| ARCHIVED | 创建工单 | 拒绝,项目已归档 |
|
||
| ARCHIVED | 添加成员 | 拒绝,项目已归档 |
|
||
| PENDING | 创建工单 | 拒绝,项目未激活 |
|
||
|
||
---
|
||
|
||
### 2.3 输入边界测试
|
||
|
||
#### TC-BOUND-INPUT-001: SQL注入测试
|
||
|
||
**测试数据**:
|
||
|
||
```sql
|
||
-- 测试输入
|
||
"'; DROP TABLE work_order; --"
|
||
"1' OR '1'='1"
|
||
"admin'--"
|
||
"1; UPDATE users SET role='admin' WHERE id='user1'"
|
||
```
|
||
|
||
**期望结果**: 所有SQL注入尝试被过滤或转义,不影响数据库
|
||
|
||
---
|
||
|
||
#### TC-BOUND-INPUT-002: XSS攻击测试
|
||
|
||
**测试数据**:
|
||
|
||
```html
|
||
<script>alert('XSS')</script>
|
||
<img src=x onerror=alert('XSS')>
|
||
<svg onload=alert('XSS')>
|
||
javascript:alert('XSS')
|
||
```
|
||
|
||
**期望结果**: 所有XSS脚本被转义或过滤,不执行
|
||
|
||
---
|
||
|
||
#### TC-BOUND-INPUT-003: 文件上传边界测试
|
||
|
||
| 测试场景 | 输入 | 期望结果 |
|
||
|----------|------|----------|
|
||
| 文件大小超限 | 11MB文件 | 拒绝,提示大小限制 |
|
||
| 非法文件类型 | .exe, .bat, .sh | 拒绝,提示类型限制 |
|
||
| 空文件 | 0字节文件 | 拒绝,提示文件无效 |
|
||
| 文件名特殊字符 | ../../../etc/passwd | 拒绝或重命名 |
|
||
|
||
---
|
||
|
||
## 三、数据一致性集成测试用例
|
||
|
||
### 3.1 事务一致性测试
|
||
|
||
#### TC-TRANS-001: 工单创建事务回滚测试
|
||
|
||
**测试步骤**:
|
||
|
||
1. 开启事务
|
||
2. 创建工单记录
|
||
3. 创建流程记录
|
||
4. 触发异常(模拟通知服务失败)
|
||
5. 验证事务回滚
|
||
|
||
**期望结果**: 工单记录和流程记录都不存在
|
||
|
||
---
|
||
|
||
#### TC-TRANS-002: 批量操作事务测试
|
||
|
||
**测试步骤**:
|
||
|
||
1. 批量创建10个工单
|
||
2. 第5个工单创建触发异常
|
||
3. 验证事务处理
|
||
|
||
**期望结果**:
|
||
- 如果配置为全部成功: 所有工单都不存在
|
||
- 如果配置为部分成功: 前4个工单存在,后6个不存在
|
||
|
||
---
|
||
|
||
#### TC-TRANS-003: 跨服务事务测试
|
||
|
||
**测试步骤**:
|
||
|
||
1. 创建工单
|
||
2. 调用通知服务发送通知
|
||
3. 通知服务失败
|
||
4. 验证补偿机制
|
||
|
||
**期望结果**:
|
||
- 工单创建成功
|
||
- 通知记录标记为失败
|
||
- 后台任务重试发送通知
|
||
|
||
---
|
||
|
||
### 3.2 关联数据一致性测试
|
||
|
||
#### TC-REL-001: 用户删除关联数据处理测试
|
||
|
||
**测试步骤**:
|
||
|
||
1. 创建用户user-001
|
||
2. 使用user-001创建多个工单
|
||
3. 尝试删除user-001
|
||
|
||
**期望结果**:
|
||
- 方案A: 拒绝删除,提示存在关联数据
|
||
- 方案B: 软删除用户,保留历史数据,显示"已删除用户"
|
||
|
||
---
|
||
|
||
#### TC-REL-002: 项目删除级联处理测试
|
||
|
||
**测试步骤**:
|
||
|
||
1. 创建项目proj-001
|
||
2. 创建工单、设备、巡检记录
|
||
3. 尝试删除proj-001
|
||
|
||
**期望结果**:
|
||
- 拒绝删除,提示存在关联数据
|
||
- 或归档项目而非删除
|
||
|
||
---
|
||
|
||
#### TC-REL-003: 设备状态同步测试
|
||
|
||
**测试步骤**:
|
||
|
||
1. 创建设备,状态:NORMAL
|
||
2. 创建设备维修工单
|
||
3. 开始处理工单
|
||
4. 验证设备状态
|
||
5. 完成工单
|
||
6. 验证设备状态
|
||
|
||
**期望结果**:
|
||
- 开始处理时: 设备状态 -> MAINTENANCE
|
||
- 完成工单时: 设备状态 -> NORMAL
|
||
|
||
---
|
||
|
||
### 3.3 并发一致性测试
|
||
|
||
#### TC-CONC-001: 工单并发分配测试
|
||
|
||
**测试步骤**:
|
||
|
||
1. 创建工单wo-001
|
||
2. 管理员A和管理员B同时尝试分配
|
||
3. 验证分配结果
|
||
|
||
**期望结果**:
|
||
- 只有一个分配成功
|
||
- 失败方收到"工单已被分配"提示
|
||
- 工单状态正确
|
||
|
||
---
|
||
|
||
#### TC-CONC-002: 库存并发扣减测试
|
||
|
||
**测试步骤**:
|
||
|
||
1. 创建备件库存,数量:10
|
||
2. 10个工单同时扣减库存,各扣减1个
|
||
3. 验证最终库存
|
||
|
||
**期望结果**:
|
||
- 最终库存:0
|
||
- 无超扣现象
|
||
|
||
---
|
||
|
||
#### TC-CONC-003: 统计数据并发更新测试
|
||
|
||
**测试步骤**:
|
||
|
||
1. 获取当前工单完成数
|
||
2. 10个工单同时完成
|
||
3. 验证统计数据
|
||
|
||
**期望结果**:
|
||
- 统计数据正确增加10
|
||
- 无丢失更新
|
||
|
||
---
|
||
|
||
### 3.4 缓存一致性测试
|
||
|
||
#### TC-CACHE-001: 权限缓存更新测试
|
||
|
||
**测试步骤**:
|
||
|
||
1. 用户登录,获取权限列表
|
||
2. 管理员修改用户权限
|
||
3. 用户再次操作
|
||
4. 验证权限生效
|
||
|
||
**期望结果**:
|
||
- 权限立即生效或短时间内生效
|
||
- 缓存正确更新
|
||
|
||
---
|
||
|
||
#### TC-CACHE-002: 项目信息缓存同步测试
|
||
|
||
**测试步骤**:
|
||
|
||
1. 获取项目信息(缓存)
|
||
2. 修改项目信息
|
||
3. 各服务验证项目信息
|
||
|
||
**期望结果**:
|
||
- 所有服务获取到最新项目信息
|
||
- 缓存正确同步或失效
|
||
|
||
---
|
||
|
||
## 四、测试数据准备脚本
|
||
|
||
### 4.1 基础数据初始化
|
||
|
||
```sql
|
||
-- 创建测试项目
|
||
INSERT INTO mdm_project (id, name, code, status, created_at) VALUES
|
||
('proj-test-001', '测试项目A', 'PROJ-A', 'ACTIVE', NOW()),
|
||
('proj-test-002', '测试项目B', 'PROJ-B', 'ACTIVE', NOW());
|
||
|
||
-- 创建测试用户
|
||
INSERT INTO auth_user (id, username, password, status, created_at) VALUES
|
||
('user-admin', 'admin', '$2a$10$...', 'ACTIVE', NOW()),
|
||
('user-worker-1', 'worker_1', '$2a$10$...', 'ACTIVE', NOW()),
|
||
('user-worker-2', 'worker_2', '$2a$10$...', 'ACTIVE', NOW());
|
||
|
||
-- 创建测试角色
|
||
INSERT INTO auth_role (id, name, code, type, created_at) VALUES
|
||
('role-admin', '管理员', 'ADMIN', 'SYSTEM', NOW()),
|
||
('role-worker', '维修工', 'WORKER', 'CUSTOM', NOW());
|
||
|
||
-- 分配角色
|
||
INSERT INTO auth_user_role (user_id, role_id, project_id) VALUES
|
||
('user-admin', 'role-admin', 'proj-test-001'),
|
||
('user-worker-1', 'role-worker', 'proj-test-001'),
|
||
('user-worker-2', 'role-worker', 'proj-test-001');
|
||
|
||
-- 创建测试设备
|
||
INSERT INTO mdm_equipment (id, project_id, name, code, status, location, created_at) VALUES
|
||
('equip-001', 'proj-test-001', '空调-001', 'AC-001', 'NORMAL', 'A栋1楼', NOW()),
|
||
('equip-002', 'proj-test-001', '空调-002', 'AC-002', 'NORMAL', 'A栋2楼', NOW());
|
||
```
|
||
|
||
### 4.2 业务数据初始化
|
||
|
||
```sql
|
||
-- 创建测试工单
|
||
INSERT INTO ops_work_order (id, project_id, order_type, title, status, priority, creator_id, created_at) VALUES
|
||
('wo-001', 'proj-test-001', 'REPAIR', '测试工单001', 'CREATED', 'HIGH', 'user-admin', NOW()),
|
||
('wo-002', 'proj-test-001', 'REPAIR', '测试工单002', 'ASSIGNED', 'MEDIUM', 'user-admin', NOW());
|
||
|
||
-- 创建测试巡检计划
|
||
INSERT INTO mdm_inspection_plan (id, project_id, name, cycle_type, status, created_at) VALUES
|
||
('plan-001', 'proj-test-001', '日常巡检', 'DAILY', 'ACTIVE', NOW());
|
||
|
||
-- 创建测试满意度调查
|
||
INSERT INTO ops_satisfaction_survey (id, project_id, title, status, created_at) VALUES
|
||
('survey-001', 'proj-test-001', '物业服务满意度调查', 'PUBLISHED', NOW());
|
||
```
|
||
|
||
---
|
||
|
||
## 五、测试执行检查清单
|
||
|
||
### 5.1 测试前检查
|
||
|
||
- [ ] 测试环境已部署
|
||
- [ ] 测试数据库已初始化
|
||
- [ ] 测试账号已创建
|
||
- [ ] 测试数据已准备
|
||
- [ ] 测试工具已配置
|
||
|
||
### 5.2 测试中检查
|
||
|
||
- [ ] 按用例顺序执行
|
||
- [ ] 记录实际结果
|
||
- [ ] 记录缺陷信息
|
||
- [ ] 保存测试日志
|
||
|
||
### 5.3 测试后检查
|
||
|
||
- [ ] 所有用例已执行
|
||
- [ ] 缺陷已记录
|
||
- [ ] 测试报告已生成
|
||
- [ ] 测试数据已清理
|
||
|
||
---
|
||
|
||
**文档维护**: 本文档随测试执行持续更新,记录测试结果和发现的问题。
|