9.8 KiB
中介库导入失败记录清除功能测试报告
测试日期: 2026-02-08 测试人员: 待指定 测试环境: 开发环境 (localhost) 功能版本: v1.0
一、测试概述
1.1 测试目标
验证在用户重新提交导入时,系统能够自动清除上一次导入失败记录的 localStorage 数据和页面按钮显示状态。
1.2 测试范围
- ✅ Task 1: ImportDialog.vue 触发清除历史记录事件
- ✅ Task 2: index.vue 添加事件监听
- ✅ Task 3: index.vue 添加事件处理方法
1.3 涉及文件
ruoyi-ui/src/views/ccdiIntermediary/components/ImportDialog.vueruoyi-ui/src/views/ccdiIntermediary/index.vue
二、测试环境准备
2.1 启动前端开发服务器
cd ruoyi-ui
npm run dev
预期结果: 服务器正常运行在 http://localhost
2.2 登录系统
- 访问:
http://localhost - 用户名:
admin - 密码:
admin123
2.3 导航到中介库管理页面
点击菜单: 中介库管理 → 中介黑名单
三、详细测试步骤
测试场景 1: 个人中介导入失败记录清除
目的: 验证重新导入个人中介时能够清除上一次的失败记录
步骤:
-
准备一份包含错误数据的个人中介导入文件
- 文件格式:
.xlsx或.xls - 确保至少有 1-2 条数据存在错误(如身份证号格式错误、必填字段缺失等)
- 文件格式:
-
点击"导入"按钮
-
确认导入类型为"个人中介"(默认)
-
上传准备好的文件
-
点击"开始导入"按钮
-
等待导入完成(会有通知提示导入完成)
-
验证点 1: 确认页面上显示"查看个人导入失败记录"按钮
- 预期: 按钮显示在工具栏中
-
点击"查看个人导入失败记录"按钮
-
验证点 2: 确认能看到失败记录列表
- 预期: 弹出对话框,显示失败的记录和失败原因
-
关闭失败记录对话框
-
再次点击"导入"按钮
-
选择任意文件(可以是正确的文件,也可以是包含错误的文件)
-
关键步骤: 点击"开始导入"按钮
-
验证点 3: "查看个人导入失败记录"按钮应该立即消失
- 预期: 按钮在点击"开始导入"后立即从页面上消失
- 验证时机: 在新导入完成前就能看到效果
-
等待新导入完成
-
验证点 4: 如果新导入有失败,确认显示的是新的失败记录
- 预期: 失败记录列表中显示的是新导入的失败数据
测试结果: ⬜ 通过 ⬜ 失败
备注:
测试场景 2: 实体中介导入失败记录清除
目的: 验证重新导入实体中介时能够清除上一次的失败记录
步骤:
-
准备一份包含错误数据的实体中介导入文件
- 文件格式:
.xlsx或.xls - 确保至少有 1-2 条数据存在错误(如统一社会信用代码格式错误、必填字段缺失等)
- 文件格式:
-
点击"导入"按钮
-
切换到"机构中介"标签
-
上传准备好的文件
-
点击"开始导入"按钮
-
等待导入完成
-
验证点 1: 确认页面上显示"查看实体导入失败记录"按钮
-
点击"查看实体导入失败记录"按钮
-
验证点 2: 确认能看到失败记录列表
-
关闭失败记录对话框
-
再次点击"导入"按钮,选择任意文件
-
关键步骤: 点击"开始导入"按钮
-
验证点 3: "查看实体导入失败记录"按钮应该立即消失
测试结果: ⬜ 通过 ⬜ 失败
备注:
测试场景 3: 两种类型互不影响
目的: 验证个人和实体中介的导入记录清除操作互不干扰
步骤:
-
导入个人中介数据(确保有失败记录)
- 点击"导入" → 选择"个人中介" → 上传文件 → 点击"开始导入"
- 等待导入完成
-
验证点 1: 确认显示"查看个人导入失败记录"按钮
-
导入实体中介数据(确保有失败记录)
- 点击"导入" → 选择"机构中介" → 上传文件 → 点击"开始导入"
- 等待导入完成
-
验证点 2: 确认两个按钮都显示
- 预期: "查看个人导入失败记录"和"查看实体导入失败记录"按钮同时显示
-
重新导入个人中介
- 点击"导入" → 选择"个人中介" → 选择文件 → 点击"开始导入"
-
验证点 3: 只清除个人中介的失败记录按钮
- 预期: "查看个人导入失败记录"按钮消失
- 预期: "查看实体导入失败记录"按钮仍然显示
-
重新导入实体中介
- 点击"导入" → 选择"机构中介" → 选择文件 → 点击"开始导入"
-
验证点 4: 只清除实体中介的失败记录按钮
- 预期: "查看实体导入失败记录"按钮消失
- 预期: "查看个人导入失败记录"按钮不会重新出现(因为已在步骤5中清除)
测试结果: ⬜ 通过 ⬜ 失败
备注:
测试场景 4: 边界情况测试
目的: 验证特殊情况下功能的稳定性
步骤:
-
子场景 4.1: 导入全部成功,无失败记录
- 准备一份完全正确的导入文件
- 执行导入操作
- 验证点: 确认不显示失败记录按钮
- 再次导入其他数据
- 验证点: 确认不影响任何状态,页面正常工作
-
子场景 4.2: localStorage 数据过期
- 导入数据(有失败),确认按钮显示
- 打开浏览器开发者工具(F12)
- 进入 Application → Local Storage
- 手动修改
intermediary_person_import_last_task的saveTime为过期时间(如7天前) - 刷新页面
- 验证点: 确认按钮不显示(数据已过期)
- 重新导入数据
- 验证点: 导入正常进行,不受localStorage过期影响
-
子场景 4.3: 浏览器控制台无错误
- 打开浏览器开发者工具(F12)
- 切换到 Console 标签
- 执行所有导入操作
- 验证点: 确认 Console 没有错误日志
-
子场景 4.4: localStorage 数据验证
- 执行导入操作(有失败)
- 打开开发者工具 → Application → Local Storage
- 验证点 1: 确认存在
intermediary_person_import_last_task数据 - 重新导入
- 验证点 2: 确认点击"开始导入"后,localStorage 中的对应数据被清除
- 刷新页面
- 验证点 3: 确认按钮不再显示
测试结果: ⬜ 通过 ⬜ 失败
备注:
测试场景 5: 快速连续点击
目的: 验证防止重复提交的机制
步骤:
-
导入数据(有失败),确认按钮显示
-
打开导入对话框
-
选择任意文件
-
关键步骤: 快速连续多次点击"开始导入"按钮(如双击或三击)
-
验证点: 按钮被禁用
- 预期: 按钮变为灰色,显示"导入中..."
- 预期: 不会重复触发多次上传
- 预期:
isUploading状态为true,阻止重复提交
-
等待导入完成
-
验证点: 只执行了一次导入操作
- 预期: 只有一个通知提示
- 预期: 失败记录列表只有一组数据
测试结果: ⬜ 通过 ⬜ 失败
备注:
测试场景 6: 刷新页面后状态保持
目的: 验证 localStorage 的持久化功能
步骤:
-
导入个人中介数据(有失败)
-
验证点 1: 确认显示失败记录按钮
-
刷新浏览器页面(F5)
-
验证点 2: 确认按钮仍然显示
- 预期: localStorage 数据持久化,状态保持
-
打开导入对话框,选择文件,点击"开始导入"
-
验证点 3: 按钮立即消失
- 预期: 即使刷新页面后,清除功能仍然正常工作
测试结果: ⬜ 通过 ⬜ 失败
备注:
四、测试数据准备
4.1 个人中介导入文件模板
必需字段:
- 姓名(name)
- 证件号码(personId)
- 人员类型(personType)
- 性别(gender)
- 手机号码(mobile)
错误数据示例:
| 姓名 | 证件号码 | 人员类型 | 性别 | 手机号码 |
|---|---|---|---|---|
| 张三 | 12345 | 中介人员 | 男 | 13800138000 |
| 李四 | 评估人员 | 女 | 13900139000 | |
| 王五 | 110101199001011234 | 男 | 13700137000 |
4.2 实体中介导入文件模板
必需字段:
- 机构名称(enterpriseName)
- 统一社会信用代码(socialCreditCode)
- 主体类型(enterpriseType)
- 企业性质(enterpriseNature)
- 法定代表人(legalRepresentative)
错误数据示例:
| 机构名称 | 统一社会信用代码 | 主体类型 | 企业性质 | 法定代表人 |
|---|---|---|---|---|
| 测试公司1 | ABCDEFGHIJKL | 律师事务所 | 个人独资 | 张三 |
| 测试公司2 | 会计师事务所 | 合伙 | 李四 | |
| 测试公司3 | 91110000123456789X | 王五 |
五、已知问题
无
六、测试总结
6.1 测试覆盖率
- 个人中介导入失败记录清除
- 实体中介导入失败记录清除
- 两种类型互不影响
- 边界情况处理
- 快速连续点击防护
- 页面刷新后状态保持
6.2 测试结果统计
- 总测试场景: 6 个
- 通过场景: __ 个
- 失败场景: __ 个
- 阻塞问题: __ 个
6.3 整体评估
⬜ 通过 - 所有测试场景通过,功能符合预期 ⬜ 有条件通过 - 大部分测试通过,存在非阻塞问题 ⬜ 不通过 - 存在关键功能缺陷,需要修复
6.4 建议
- (根据测试结果填写建议)
七、附录
7.1 相关代码提交
- Task 1: commit
1216ba9"feat: 导入时触发清除历史记录事件" - Task 2: commit
51dc466"feat: 监听清除导入历史记录事件" - Task 3: commit
b35d05a"feat: 实现清除导入历史记录方法"
7.2 相关文档
- 实施计划:
doc/plans/2025-02-08-intermediary-import-history-cleanup.md - 需求文档: 待补充
7.3 联系方式
- 开发人员: Claude (AI Assistant)
- 测试负责人: 待指定
- 项目经理: 待指定
测试报告版本: v1.0 最后更新: 2026-02-08