8.7 KiB
8.7 KiB
变更历史功能测试清单
测试目的
验证农机全生命周期档案变更历史功能是否正常工作。
测试环境
- 浏览器: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>能,可以按以下顺序执行:
-
创建测试数据(2分钟)
- 新建一个农机"测试拖拉机"
-
生成变更记录(3分钟)
- 修改设备名称
- 修改设备状态
- 修改购机价格
-
验证显示(2分钟)
- 打开详情页
- 切换到变更历史标签
- 验证3条记录都显示正确
-
测试过滤(2分钟)
- 搜索"设备名称"
- 切换视图模式
- 检查统计数据
总计:约9分钟完成基础功能验证
自动化测试建议
未来可以考虑使用以下工具进行自动化测试:
- Cypress:端到端测试
- Jest + React Testing Library:单元测试
- Playwright:跨浏览器测试
示例测试用例:
describe('变更历史功能', () => {
it('应该在编辑后记录变更', () => {
// 1. 创建农机
// 2. 编辑农机
// 3. 验证变更记录存在
});
it('应该正确过滤变更记录', () => {
// 1. 创建多条变更记录
// 2. 应用过滤器
// 3. 验证过滤结果
});
});