Files
hzdyjs/出国党籍保留审批测试指南.md
T
2025-10-14 16:41:19 +08:00

11 KiB
Raw Blame History

出国党籍保留审批功能测试指南

📋 测试前准备

1. 环境准备

2. 测试账号准备

需要准备两个测试账号:

  • 申请人账号:用于提交党籍保留申请
  • 审批人账号:用于审批党籍保留申请(需要 rs:partyretention:approve 权限)

3. 后端接口确认

确认以下接口已实现:

  • GET /rs/party/retention/list - 查询党籍保留列表
  • GET /rs/party/retention/{retentionId} - 查询详情
  • PUT /rs/party/retention/approve/{retentionId} - 审批接口

🧪 测试用例

测试用例1:待审批列表显示

测试步骤:

  1. 使用审批人账号登录系统
  2. 进入"人事管理" → "党籍保留审批"菜单
  3. 查看"待审批"选项卡

预期结果:

  • ✅ 页面正常加载,无报错
  • ✅ 表格显示所有状态为"待审批"(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:搜索功能

测试步骤:

  1. 在待审批列表页面
  2. 在搜索框输入姓名"测试人员"
  3. 点击"搜索"按钮
  4. 点击"重置"按钮

预期结果:

  • ✅ 搜索后只显示匹配的记录
  • ✅ 重置后恢复显示所有待审批记录
  • ✅ 支持按身份证号、工作部门、目的地搜索
  • ✅ 分页功能正常

测试用例3:查看详情

测试步骤:

  1. 在待审批列表中点击某条记录的"查看详情"按钮
  2. 或双击表格行

预期结果:

  • ✅ 弹出详情弹窗
  • ✅ 显示完整的申请信息(基本信息、申请信息、审批信息)
  • ✅ 状态显示为"待审批"(黄色标签)
  • ✅ 弹窗底部显示"审批通过"和"审批拒绝"按钮
  • ✅ 点击"关闭"按钮可关闭弹窗

测试用例4:审批通过(列表操作)

测试步骤:

  1. 在待审批列表中点击某条记录的"审批通过"按钮
  2. 在弹出的审批通过弹窗中输入审批意见(可选)
  3. 点击"确认通过"按钮

预期结果:

  • ✅ 弹出审批通过弹窗
  • ✅ 审批意见为非必填项
  • ✅ 点击确认后显示"审批通过成功"提示
  • ✅ 待审批列表自动刷新,该记录消失
  • ✅ 切换到"审批记录"选项卡,可以看到该记录,状态为"已通过"(绿色标签)

数据验证:

-- 查询审批后的数据状态
SELECT retention_id, name, status, application_time, update_time
FROM rs_party_membership_retention
WHERE name = '测试人员';
-- status 应该为 '2'(已通过)

测试用例5:审批拒绝(列表操作)

测试步骤:

  1. 在待审批列表中点击某条记录的"审批拒绝"按钮
  2. 在弹出的审批拒绝弹窗中不输入拒绝理由,直接点击"确认拒绝"
  3. 观察验证提示
  4. 输入拒绝理由"不符合出国条件"
  5. 点击"确认拒绝"按钮

预期结果:

  • ✅ 弹出审批拒绝弹窗
  • ✅ 拒绝理由为必填项,不填写时显示验证提示
  • ✅ 填写理由后点击确认显示"审批拒绝成功"提示
  • ✅ 待审批列表自动刷新,该记录消失
  • ✅ 切换到"审批记录"选项卡,可以看到该记录,状态为"已拒绝"(红色标签)

测试用例6:详情弹窗中审批

测试步骤:

  1. 在待审批列表中点击"查看详情"
  2. 在详情弹窗底部点击"审批通过"或"审批拒绝"按钮
  3. 完成审批操作

预期结果:

  • ✅ 详情弹窗自动关闭
  • ✅ 弹出对应的审批弹窗
  • ✅ 审批流程与列表操作一致
  • ✅ 审批成功后列表自动刷新

测试用例7:审批记录列表

测试步骤:

  1. 切换到"审批记录"选项卡
  2. 查看已审批的记录

预期结果:

  • ✅ 显示所有状态为"已通过"(status=2)和"已拒绝"(status=3)的记录
  • ✅ 表格显示正常,包含审批状态列
  • ✅ 审批状态用不同颜色的标签区分(已通过-绿色,已拒绝-红色)
  • ✅ 显示审批时间(update_time)
  • ✅ 只有"查看详情"操作按钮

测试用例8:审批记录搜索

测试步骤:

  1. 在审批记录选项卡
  2. 在审批状态下拉框选择"已通过"
  3. 点击"搜索"
  4. 再选择"已拒绝"并搜索

预期结果:

  • ✅ 选择"已通过"后只显示已通过的记录
  • ✅ 选择"已拒绝"后只显示已拒绝的记录
  • ✅ 支持按姓名、身份证号、工作部门搜索
  • ✅ 重置功能正常

测试用例9:审批记录详情查看

测试步骤:

  1. 在审批记录列表中点击某条记录的"查看详情"
  2. 查看详情信息

预期结果:

  • ✅ 弹出详情弹窗
  • ✅ 显示完整的申请信息
  • ✅ 状态显示为"已通过"或"已拒绝"
  • ✅ 弹窗底部不显示审批按钮(因为已审批)
  • ✅ 只显示"关闭"按钮

测试用例10:数据流转验证

测试步骤:

  1. 使用申请人账号登录
  2. 进入"党籍保留管理"页面
  3. 提交一个新的党籍保留申请
  4. 使用审批人账号登录
  5. 进入"党籍保留审批"页面
  6. 审批通过该申请
  7. 使用申请人账号登录
  8. 进入"党籍保留管理"页面
  9. 切换到"保留历史"选项卡

预期结果:

  • ✅ 申请提交后状态变为"待审批"
  • ✅ 审批人可以在审批页面看到该申请
  • ✅ 审批通过后状态变为"已通过"
  • ✅ 关键验证:在"党籍保留管理"的"保留历史"选项卡中可以看到该记录
  • ✅ 保留历史中的数据与审批通过的数据一致

数据库验证:

-- 查询党籍保留表
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:权限控制

测试步骤:

  1. 使用没有审批权限的账号登录
  2. 尝试访问"党籍保留审批"菜单

预期结果:

  • ✅ 菜单不显示或无法访问
  • ✅ 直接访问URL时显示无权限提示
  • ✅ 有权限的用户可以正常访问和操作

测试用例12:并发审批

测试步骤:

  1. 使用两个审批人账号同时登录
  2. 同时对同一条申请进行审批

预期结果:

  • ✅ 第一个审批成功
  • ✅ 第二个审批时应该提示该申请已被审批或状态已变更
  • ✅ 数据状态正确,不会出现重复审批

测试用例13:页面响应式

测试步骤:

  1. 在不同屏幕尺寸下访问审批页面
  2. 测试移动端、平板、桌面端显示

预期结果:

  • ✅ 表格在小屏幕下可以横向滚动
  • ✅ 弹窗在小屏幕下自适应宽度
  • ✅ 按钮和操作列在小屏幕下正常显示
  • ✅ 搜索表单在小屏幕下自动换行

🐛 常见问题排查

问题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浏览器正常

📊 测试报告模板

测试环境

  • 前端版本:
  • 后端版本:
  • 数据库版本:
  • 浏览器:
  • 测试时间:

测试结果

测试用例 测试结果 问题描述 截图
待审批列表显示 ✅ 通过 / ❌ 失败
搜索功能 ✅ 通过 / ❌ 失败
查看详情 ✅ 通过 / ❌ 失败
审批通过 ✅ 通过 / ❌ 失败
审批拒绝 ✅ 通过 / ❌ 失败
审批记录 ✅ 通过 / ❌ 失败
数据流转 ✅ 通过 / ❌ 失败
权限控制 ✅ 通过 / ❌ 失败

发现的问题

改进建议


测试人员:
测试日期:
测试状态:✅ 通过 / ⚠️ 部分通过 / ❌ 未通过