11 KiB
11 KiB
出国党籍保留审批功能测试指南
📋 测试前准备
1. 环境准备
- ✅ 前端服务已启动(http://localhost)
- ✅ 后端服务已启动(http://localhost:8080)
- ✅ 数据库连接正常
- ✅ 已配置审批菜单和权限
2. 测试账号准备
需要准备两个测试账号:
- 申请人账号:用于提交党籍保留申请
- 审批人账号:用于审批党籍保留申请(需要
rs:partyretention:approve权限)
3. 后端接口确认
确认以下接口已实现:
GET /rs/party/retention/list- 查询党籍保留列表GET /rs/party/retention/{retentionId}- 查询详情PUT /rs/party/retention/approve/{retentionId}- 审批接口
🧪 测试用例
测试用例1:待审批列表显示
测试步骤:
- 使用审批人账号登录系统
- 进入"人事管理" → "党籍保留审批"菜单
- 查看"待审批"选项卡
预期结果:
- ✅ 页面正常加载,无报错
- ✅ 表格显示所有状态为"待审批"(status=1)的申请
- ✅ 表格列显示正常:序号、姓名、身份证号、出国时间、停留天数、目的地、党支部、申请时间、操作
- ✅ 操作列显示三个按钮:查看详情、审批通过、审批拒绝
测试数据:
-- 插入测试数据(如果没有待审批数据)
INSERT INTO rs_party_membership_retention (
retention_id, name, id_card, position, spouse, destination,
purpose, relative_name, travel_start_date, travel_end_date,
stay_days, self_funded, party_branch, application_date,
status, application_time, create_time, update_time
) VALUES (
nextval('rs_party_retention_seq'),
'测试人员',
'330101199001011234',
'教师',
'配偶姓名',
'美国',
'探亲访友',
'亲属姓名',
'2025-02-01',
'2025-02-28',
28,
'1',
'第一党支部',
'2025-01-09',
'1',
NOW(),
NOW(),
NOW()
);
测试用例2:搜索功能
测试步骤:
- 在待审批列表页面
- 在搜索框输入姓名"测试人员"
- 点击"搜索"按钮
- 点击"重置"按钮
预期结果:
- ✅ 搜索后只显示匹配的记录
- ✅ 重置后恢复显示所有待审批记录
- ✅ 支持按身份证号、工作部门、目的地搜索
- ✅ 分页功能正常
测试用例3:查看详情
测试步骤:
- 在待审批列表中点击某条记录的"查看详情"按钮
- 或双击表格行
预期结果:
- ✅ 弹出详情弹窗
- ✅ 显示完整的申请信息(基本信息、申请信息、审批信息)
- ✅ 状态显示为"待审批"(黄色标签)
- ✅ 弹窗底部显示"审批通过"和"审批拒绝"按钮
- ✅ 点击"关闭"按钮可关闭弹窗
测试用例4:审批通过(列表操作)
测试步骤:
- 在待审批列表中点击某条记录的"审批通过"按钮
- 在弹出的审批通过弹窗中输入审批意见(可选)
- 点击"确认通过"按钮
预期结果:
- ✅ 弹出审批通过弹窗
- ✅ 审批意见为非必填项
- ✅ 点击确认后显示"审批通过成功"提示
- ✅ 待审批列表自动刷新,该记录消失
- ✅ 切换到"审批记录"选项卡,可以看到该记录,状态为"已通过"(绿色标签)
数据验证:
-- 查询审批后的数据状态
SELECT retention_id, name, status, application_time, update_time
FROM rs_party_membership_retention
WHERE name = '测试人员';
-- status 应该为 '2'(已通过)
测试用例5:审批拒绝(列表操作)
测试步骤:
- 在待审批列表中点击某条记录的"审批拒绝"按钮
- 在弹出的审批拒绝弹窗中不输入拒绝理由,直接点击"确认拒绝"
- 观察验证提示
- 输入拒绝理由"不符合出国条件"
- 点击"确认拒绝"按钮
预期结果:
- ✅ 弹出审批拒绝弹窗
- ✅ 拒绝理由为必填项,不填写时显示验证提示
- ✅ 填写理由后点击确认显示"审批拒绝成功"提示
- ✅ 待审批列表自动刷新,该记录消失
- ✅ 切换到"审批记录"选项卡,可以看到该记录,状态为"已拒绝"(红色标签)
测试用例6:详情弹窗中审批
测试步骤:
- 在待审批列表中点击"查看详情"
- 在详情弹窗底部点击"审批通过"或"审批拒绝"按钮
- 完成审批操作
预期结果:
- ✅ 详情弹窗自动关闭
- ✅ 弹出对应的审批弹窗
- ✅ 审批流程与列表操作一致
- ✅ 审批成功后列表自动刷新
测试用例7:审批记录列表
测试步骤:
- 切换到"审批记录"选项卡
- 查看已审批的记录
预期结果:
- ✅ 显示所有状态为"已通过"(status=2)和"已拒绝"(status=3)的记录
- ✅ 表格显示正常,包含审批状态列
- ✅ 审批状态用不同颜色的标签区分(已通过-绿色,已拒绝-红色)
- ✅ 显示审批时间(update_time)
- ✅ 只有"查看详情"操作按钮
测试用例8:审批记录搜索
测试步骤:
- 在审批记录选项卡
- 在审批状态下拉框选择"已通过"
- 点击"搜索"
- 再选择"已拒绝"并搜索
预期结果:
- ✅ 选择"已通过"后只显示已通过的记录
- ✅ 选择"已拒绝"后只显示已拒绝的记录
- ✅ 支持按姓名、身份证号、工作部门搜索
- ✅ 重置功能正常
测试用例9:审批记录详情查看
测试步骤:
- 在审批记录列表中点击某条记录的"查看详情"
- 查看详情信息
预期结果:
- ✅ 弹出详情弹窗
- ✅ 显示完整的申请信息
- ✅ 状态显示为"已通过"或"已拒绝"
- ✅ 弹窗底部不显示审批按钮(因为已审批)
- ✅ 只显示"关闭"按钮
测试用例10:数据流转验证
测试步骤:
- 使用申请人账号登录
- 进入"党籍保留管理"页面
- 提交一个新的党籍保留申请
- 使用审批人账号登录
- 进入"党籍保留审批"页面
- 审批通过该申请
- 使用申请人账号登录
- 进入"党籍保留管理"页面
- 切换到"保留历史"选项卡
预期结果:
- ✅ 申请提交后状态变为"待审批"
- ✅ 审批人可以在审批页面看到该申请
- ✅ 审批通过后状态变为"已通过"
- ✅ 关键验证:在"党籍保留管理"的"保留历史"选项卡中可以看到该记录
- ✅ 保留历史中的数据与审批通过的数据一致
数据库验证:
-- 查询党籍保留表
SELECT retention_id, name, status, application_time
FROM rs_party_membership_retention
WHERE status = '2'
ORDER BY update_time DESC;
-- 查询保留历史表(如果有单独的历史表)
SELECT history_id, applicant_name, destination, retention_start_date, retention_end_date
FROM rs_party_retention_history
ORDER BY create_time DESC;
测试用例11:权限控制
测试步骤:
- 使用没有审批权限的账号登录
- 尝试访问"党籍保留审批"菜单
预期结果:
- ✅ 菜单不显示或无法访问
- ✅ 直接访问URL时显示无权限提示
- ✅ 有权限的用户可以正常访问和操作
测试用例12:并发审批
测试步骤:
- 使用两个审批人账号同时登录
- 同时对同一条申请进行审批
预期结果:
- ✅ 第一个审批成功
- ✅ 第二个审批时应该提示该申请已被审批或状态已变更
- ✅ 数据状态正确,不会出现重复审批
测试用例13:页面响应式
测试步骤:
- 在不同屏幕尺寸下访问审批页面
- 测试移动端、平板、桌面端显示
预期结果:
- ✅ 表格在小屏幕下可以横向滚动
- ✅ 弹窗在小屏幕下自适应宽度
- ✅ 按钮和操作列在小屏幕下正常显示
- ✅ 搜索表单在小屏幕下自动换行
🐛 常见问题排查
问题1:待审批列表为空
可能原因:
- 没有状态为"待审批"(status=1)的数据
- 后端接口返回数据格式不正确
- 权限问题导致无法查询数据
排查方法:
-- 查询待审批数据
SELECT * FROM rs_party_membership_retention WHERE status = '1';
问题2:审批后数据不刷新
可能原因:
- 前端刷新逻辑有误
- 后端审批接口未正确更新状态
排查方法:
- 检查浏览器控制台是否有错误
- 检查网络请求是否成功
- 查询数据库确认状态是否更新
问题3:审批通过后保留历史中看不到数据
可能原因:
- 后端未实现自动创建历史记录的逻辑
- 历史记录查询条件不正确
排查方法:
-- 查询已通过的申请
SELECT * FROM rs_party_membership_retention WHERE status = '2';
-- 查询历史记录表
SELECT * FROM rs_party_retention_history;
问题4:审批按钮不显示
可能原因:
- 权限配置不正确
- 前端权限指令
v-hasPermi配置错误
排查方法:
- 检查用户角色是否有
rs:partyretention:approve权限 - 检查浏览器控制台是否有权限相关错误
✅ 测试检查清单
功能测试
- 待审批列表正常显示
- 搜索功能正常
- 查看详情功能正常
- 审批通过功能正常
- 审批拒绝功能正常(必填验证)
- 审批记录列表正常显示
- 审批记录搜索正常
- 审批记录详情查看正常
- 数据流转到保留历史正常
界面测试
- 表格显示正常
- 分页功能正常
- 弹窗显示正常
- 按钮样式正常
- 标签颜色正确
- 响应式布局正常
权限测试
- 菜单权限控制正常
- 操作权限控制正常
- 无权限用户无法访问
性能测试
- 列表加载速度正常
- 搜索响应速度正常
- 审批操作响应速度正常
- 大数据量下表格滚动流畅
兼容性测试
- Chrome浏览器正常
- Firefox浏览器正常
- Safari浏览器正常
- Edge浏览器正常
📊 测试报告模板
测试环境
- 前端版本:
- 后端版本:
- 数据库版本:
- 浏览器:
- 测试时间:
测试结果
| 测试用例 | 测试结果 | 问题描述 | 截图 |
|---|---|---|---|
| 待审批列表显示 | ✅ 通过 / ❌ 失败 | ||
| 搜索功能 | ✅ 通过 / ❌ 失败 | ||
| 查看详情 | ✅ 通过 / ❌ 失败 | ||
| 审批通过 | ✅ 通过 / ❌ 失败 | ||
| 审批拒绝 | ✅ 通过 / ❌ 失败 | ||
| 审批记录 | ✅ 通过 / ❌ 失败 | ||
| 数据流转 | ✅ 通过 / ❌ 失败 | ||
| 权限控制 | ✅ 通过 / ❌ 失败 |
发现的问题
改进建议
测试人员:
测试日期:
测试状态:✅ 通过 / ⚠️ 部分通过 / ❌ 未通过