生产管理系统前端 - 更新瓦力提交的产品原型到参考目录
This commit is contained in:
318
src/CHANGE_HISTORY_TEST.md
Normal file
318
src/CHANGE_HISTORY_TEST.md
Normal file
@@ -0,0 +1,318 @@
|
||||
# 变更历史功能测试清单
|
||||
|
||||
## 测试目的
|
||||
验证农机全生命周期档案变更历史功能是否正常工作。
|
||||
|
||||
## 测试环境
|
||||
- 浏览器:Chrome/Firefox/Safari
|
||||
- 系统:智慧农业生产管理系统
|
||||
- 模块:智能农机管理系统 > 农机全生命周期档案
|
||||
|
||||
## 测试步骤
|
||||
|
||||
### 1. 基础功能测试
|
||||
|
||||
#### 1.1 创建新农机档案
|
||||
- [ ] 进入"农机档案录入"页面
|
||||
- [ ] 点击"新增农机"按钮
|
||||
- [ ] 填写完整的农机信息
|
||||
- [ ] 保存成功
|
||||
- [ ] **预期结果**:新建不应产生变更记录
|
||||
|
||||
#### 1.2 编辑农机档案 - 单字段修改
|
||||
- [ ] 选择一个已存在的农机档案
|
||||
- [ ] 点击"编辑"按钮
|
||||
- [ ] 修改"设备名称"字段:`拖拉机A` → `东方红拖拉机`
|
||||
- [ ] 保存
|
||||
- [ ] **预期结果**:
|
||||
- 提示"农机档案更新成功,记录了1项变更"
|
||||
- 可以在变更历史中看到这条记录
|
||||
|
||||
#### 1.3 编辑农机档案 - 多字段修改
|
||||
- [ ] 编辑同一农机档案
|
||||
- [ ] 同时修改以下字段:
|
||||
- 设备状态:`正常` → `待维护`
|
||||
- 当前位置:`A地块` → `B地块`
|
||||
- 购机价格:`50000` → `48000`
|
||||
- [ ] 保存
|
||||
- [ ] **预期结果**:
|
||||
- 提示"农机档案更新成功,记录了3项变更"
|
||||
- 变更历史中应显示3条新记录
|
||||
|
||||
### 2. 变更历史显示测试
|
||||
|
||||
#### 2.1 查看变更历史
|
||||
- [ ] 点击农机名称查看详情
|
||||
- [ ] 切换到"变更历史"标签页
|
||||
- [ ] **检查点**:
|
||||
- [ ] 可以看到之前修改的所有记录
|
||||
- [ ] 记录按时间倒序排列(最新的在最上面)
|
||||
- [ ] 每条记录显示:字段名、旧值、新值、操作人、时间
|
||||
|
||||
#### 2.2 统计卡片
|
||||
- [ ] 查看顶部的4个统计卡片
|
||||
- [ ] **检查点**:
|
||||
- [ ] "总变更次数"显示正确(应该是4次)
|
||||
- [ ] "变更字段数"显示正确
|
||||
- [ ] "操作人数"显示正确(应该是1人)
|
||||
- [ ] "最近变更"显示相对时间(如"刚刚"、"5分钟前")
|
||||
|
||||
### 3. 过滤和搜索测试
|
||||
|
||||
#### 3.1 关键词搜索
|
||||
- [ ] 在搜索框输入"设备名称"
|
||||
- [ ] **预期结果**:只显示设备名称相关的变更记录
|
||||
- [ ] 清空搜索框
|
||||
- [ ] 输入"东方红"
|
||||
- [ ] **预期结果**:显示包含"东方红"的变更记录
|
||||
|
||||
#### 3.2 操作人筛选
|
||||
- [ ] 点击"操作人"下拉框
|
||||
- [ ] **检查点**:
|
||||
- [ ] 下拉列表包含所有操作过的人员
|
||||
- [ ] 选择"系统管理员"
|
||||
- [ ] 只显示该操作人的变更记录
|
||||
|
||||
#### 3.3 字段筛选
|
||||
- [ ] 点击"字段"下拉框
|
||||
- [ ] **检查点**:
|
||||
- [ ] 下拉列表包含所有被修改过的字段
|
||||
- [ ] 选择"设备状态"
|
||||
- [ ] 只显示设备状态字段的变更记录
|
||||
|
||||
#### 3.4 组合过滤
|
||||
- [ ] 同时使用搜索、操作人筛选和字段筛选
|
||||
- [ ] **预期结果**:应该显示同时满足所有条件的记录
|
||||
- [ ] 清空所有过滤条件
|
||||
- [ ] **预期结果**:恢复显示所有记录
|
||||
|
||||
### 4. 视图模式测试
|
||||
|
||||
#### 4.1 时间轴视图
|
||||
- [ ] 确认当前为"时间轴"视图(默认)
|
||||
- [ ] **检查点**:
|
||||
- [ ] 每条记录显示在时间线上
|
||||
- [ ] 有垂直的连接线
|
||||
- [ ] 显示相对时间(如"2小时前")
|
||||
- [ ] 悬停在记录上显示完整时间
|
||||
|
||||
#### 4.2 按日期分组视图
|
||||
- [ ] 点击"按日期"按钮
|
||||
- [ ] **检查点**:
|
||||
- [ ] 记录按日期分组显示
|
||||
- [ ] 每个日期显示该日的变更数量
|
||||
- [ ] 日期按倒序排列
|
||||
- [ ] 同一天内的记录紧凑显示
|
||||
|
||||
#### 4.3 视图切换
|
||||
- [ ] 在两种视图之间来回切换
|
||||
- [ ] **预期结果**:
|
||||
- [ ] 切换流畅,无卡顿
|
||||
- [ ] 数据保持一致
|
||||
- [ ] 过滤条件保持有效
|
||||
|
||||
### 5. 数据格式化测试
|
||||
|
||||
#### 5.1 日期字段
|
||||
- [ ] 修改"出厂日期"或"购买日期"
|
||||
- [ ] 查看变更历史
|
||||
- [ ] **检查点**:
|
||||
- [ ] 日期显示为 `YYYY/MM/DD` 格式
|
||||
- [ ] 中文日期格式正确
|
||||
|
||||
#### 5.2 金额字段
|
||||
- [ ] 修改"购机价格"或"保险金额"
|
||||
- [ ] 查看变更历史
|
||||
- [ ] **检查点**:
|
||||
- [ ] 显示货币符号 `¥`
|
||||
- [ ] 千位分隔符正确(如 `¥50,000`)
|
||||
|
||||
#### 5.3 数组字段
|
||||
- [ ] 修改"标签"(添加或删除标签)
|
||||
- [ ] 查看变更历史
|
||||
- [ ] **检查点**:
|
||||
- [ ] 旧值显示原标签列表
|
||||
- [ ] 新值显示更新后的标签列表
|
||||
- [ ] 标签之间用逗号分隔
|
||||
|
||||
#### 5.4 空值处理
|
||||
- [ ] 修改一个空字段为非空值
|
||||
- [ ] 修改一个非空字段为空
|
||||
- [ ] 查看变更历史
|
||||
- [ ] **检查点**:
|
||||
- [ ] 空值显示为 `(空)`
|
||||
- [ ] 不显示为 `null` 或 `undefined`
|
||||
|
||||
### 6. 变更统计测试
|
||||
|
||||
#### 6.1 字段变更频率
|
||||
- [ ] 滚动到"变更统计"区域
|
||||
- [ ] 查看"字段变更频率 Top 5"
|
||||
- [ ] **检查点**:
|
||||
- [ ] 显示最常修改的5个字段
|
||||
- [ ] 按变更次数降序排列
|
||||
- [ ] 显示每个字段的变更次数
|
||||
|
||||
#### 6.2 操作人统计
|
||||
- [ ] 查看"操作人变更统计"
|
||||
- [ ] **检查点**:
|
||||
- [ ] 显示所有操作人
|
||||
- [ ] 显示每个操作人的操作次数
|
||||
- [ ] 按次数降序排列
|
||||
|
||||
### 7. 边界情况测试
|
||||
|
||||
#### 7.1 无变更记录
|
||||
- [ ] 创建一个新农机(不要编辑)
|
||||
- [ ] 查看其变更历史
|
||||
- [ ] **预期结果**:显示"暂无变更记录"
|
||||
|
||||
#### 7.2 大量变更记录
|
||||
- [ ] 对同一农机进行20次以上的编辑
|
||||
- [ ] 查看变更历史
|
||||
- [ ] **检查点**:
|
||||
- [ ] 滚动区域正常工作
|
||||
- [ ] 不会卡顿或崩溃
|
||||
- [ ] 统计数据正确
|
||||
|
||||
#### 7.3 相同值修改
|
||||
- [ ] 编辑农机,但不修改任何字段(或改回原值)
|
||||
- [ ] 保存
|
||||
- [ ] **预期结果**:
|
||||
- [ ] 提示"更新成功"
|
||||
- [ ] 不应产生变更记录
|
||||
|
||||
### 8. 用户体验测试
|
||||
|
||||
#### 8.1 响应式布局
|
||||
- [ ] 缩小浏览器窗口
|
||||
- [ ] **检查点**:
|
||||
- [ ] 统计卡片自动换行
|
||||
- [ ] 过滤器在小屏幕上垂直排列
|
||||
- [ ] 变更记录卡片适应屏幕宽度
|
||||
|
||||
#### 8.2 交互反馈
|
||||
- [ ] 悬停在变更记录卡片上
|
||||
- [ ] **检查点**:
|
||||
- [ ] 卡片有阴影效果
|
||||
- [ ] 鼠标指针变化(如果可点击)
|
||||
|
||||
#### 8.3 加载性能
|
||||
- [ ] 打开有大量变更记录的农机详情
|
||||
- [ ] **检查点**:
|
||||
- [ ] 页面加载时间 < 2秒
|
||||
- [ ] 滚动流畅,无明显延迟
|
||||
|
||||
### 9. 数据一致性测试
|
||||
|
||||
#### 9.1 跨页面一致性
|
||||
- [ ] 在"农机档案录入"页面编辑农机
|
||||
- [ ] 关闭并重新打开详情页
|
||||
- [ ] **预期结果**:变更记录保持一致
|
||||
|
||||
#### 9.2 刷新后数据保持
|
||||
- [ ] 查看变更历史
|
||||
- [ ] 刷新浏览器页面(F5)
|
||||
- [ ] 重新打开农机详情
|
||||
- [ ] **预期结果**:所有变更记录仍然存在
|
||||
|
||||
#### 9.3 多农机独立性
|
||||
- [ ] 编辑农机A
|
||||
- [ ] 编辑农机B
|
||||
- [ ] 分别查看两者的变更历史
|
||||
- [ ] **预期结果**:
|
||||
- [ ] 农机A只显示A的变更
|
||||
- [ ] 农机B只显示B的变更
|
||||
- [ ] 互不干扰
|
||||
|
||||
### 10. 异常处理测试
|
||||
|
||||
#### 10.1 特殊字符处理
|
||||
- [ ] 修改字段值为包含特殊字符的文本(如 `<>&"'`)
|
||||
- [ ] 查看变更历史
|
||||
- [ ] **预期结果**:特殊字符正确显示,不会导致页面错误
|
||||
|
||||
#### 10.2 超长文本
|
||||
- [ ] 修改备注字段为超长文本(1000+字符)
|
||||
- [ ] 查看变更历史
|
||||
- [ ] **预期结果**:
|
||||
- [ ] 文本正确显示或截断
|
||||
- [ ] 不会破坏页面布局
|
||||
|
||||
## 测试结果记录
|
||||
|
||||
### 测试信息
|
||||
- 测试日期:__________
|
||||
- 测试人员:__________
|
||||
- 浏览器版本:__________
|
||||
- 系统版本:__________
|
||||
|
||||
### 测试结果统计
|
||||
- 通过数量:______ / 60+
|
||||
- 失败数量:______
|
||||
- 阻塞数量:______
|
||||
|
||||
### 发现的问题
|
||||
| 问题编号 | 问题描述 | 严重程度 | 状态 |
|
||||
|---------|---------|---------|------|
|
||||
| 1 | | | |
|
||||
| 2 | | | |
|
||||
| 3 | | | |
|
||||
|
||||
### 测试结论
|
||||
- [ ] 通过 - 所有功能正常
|
||||
- [ ] 有问题 - 需要修复
|
||||
- [ ] 阻塞 - 无法继续测试
|
||||
|
||||
### 备注
|
||||
_记录任何额外的观察或建议_
|
||||
|
||||
---
|
||||
|
||||
## 快速验证脚本
|
||||
|
||||
如需快速验证核心<EFBFBD><EFBFBD>能,可以按以下顺序执行:
|
||||
|
||||
1. **创建测试数据**(2分钟)
|
||||
- 新建一个农机"测试拖拉机"
|
||||
|
||||
2. **生成变更记录**(3分钟)
|
||||
- 修改设备名称
|
||||
- 修改设备状态
|
||||
- 修改购机价格
|
||||
|
||||
3. **验证显示**(2分钟)
|
||||
- 打开详情页
|
||||
- 切换到变更历史标签
|
||||
- 验证3条记录都显示正确
|
||||
|
||||
4. **测试过滤**(2分钟)
|
||||
- 搜索"设备名称"
|
||||
- 切换视图模式
|
||||
- 检查统计数据
|
||||
|
||||
总计:约9分钟完成基础功能验证
|
||||
|
||||
## 自动化测试建议
|
||||
|
||||
未来可以考虑使用以下工具进行自动化测试:
|
||||
- **Cypress**:端到端测试
|
||||
- **Jest + React Testing Library**:单元测试
|
||||
- **Playwright**:跨浏览器测试
|
||||
|
||||
示例测试用例:
|
||||
```javascript
|
||||
describe('变更历史功能', () => {
|
||||
it('应该在编辑后记录变更', () => {
|
||||
// 1. 创建农机
|
||||
// 2. 编辑农机
|
||||
// 3. 验证变更记录存在
|
||||
});
|
||||
|
||||
it('应该正确过滤变更记录', () => {
|
||||
// 1. 创建多条变更记录
|
||||
// 2. 应用过滤器
|
||||
// 3. 验证过滤结果
|
||||
});
|
||||
});
|
||||
```
|
||||
Reference in New Issue
Block a user