Files
his/sql/迁移记录-DB变更记录/门诊预约测试数据使用指南.md

8.3 KiB
Raw Blame History

门诊预约挂号功能测试数据使用指南

1. 准备工作

1.1 数据库环境准备

  • 确保已安装并启动PostgreSQL数据库
  • 确保已创建hisdev模式(或根据实际情况修改脚本中的模式名)
  • 确保已创建相关表结构:
    • clinical_ticket (号源表)
    • adm_practitioner (医生表)
    • adm_patient (患者表)
    • cli_reservation_record (预约记录表)

1.2 验证表结构

执行以下查询验证核心表是否存在:

SELECT table_name FROM information_schema.tables WHERE table_schema = 'hisdev';

2. 执行测试数据脚本

2.1 脚本位置

d:\work\门诊预约测试数据插入.sql

2.2 执行方式

方式一通过pgAdmin执行

  1. 打开pgAdmin连接到数据库
  2. 选择hisdev模式
  3. 打开SQL编辑器粘贴脚本内容
  4. 点击执行按钮或按F5

方式二:通过命令行执行

psql -h localhost -U username -d database_name -f "d:\work\门诊预约测试数据插入.sql"

3. 测试数据说明

3.1 号源数据 (clinical_ticket)

3.1.1 未预约状态的号源(用于测试正常预约流程)

  • 号源数量10个普通号 + 5个专家号
  • 日期:当前系统日期
  • 医生:张三(内科)
  • 状态:unbooked

3.1.2 已预约状态的号源(用于测试取消预约流程)

  • 号源数量2个
  • 日期:当前系统日期
  • 医生:张三(内科)
  • 状态:booked
  • 患者患者A、患者B

3.1.3 已取号状态的号源(用于测试逆向用例)

  • 号源数量1个
  • 日期:当前系统日期
  • 医生:张三(内科)
  • 状态:checked
  • 患者患者C

3.1.4 明天日期的号源(用于测试日期选择功能)

  • 号源数量10个普通号
  • 日期:当前系统日期 + 1天
  • 医生:王五(外科)
  • 状态:unbooked

3.2 预约记录数据 (cli_reservation_record)

  • 记录数量2条
  • 患者患者A、患者B
  • 医生:张三

4. 测试用例执行指南

4.1 正向测试用例

4.1.1 号源日期选择器-默认值

  • 测试步骤
    1. 打开门诊预约挂号界面
    2. 检查号源日期选择器的默认值
  • 预期结果:默认值为当前系统日期

4.1.2 状态筛选下拉框-默认值

  • 测试步骤
    1. 打开门诊预约挂号界面
    2. 检查状态筛选下拉框的默认值
  • 预期结果:默认值为"未预约"

4.1.3 号源预约功能-正常流程

  • 测试步骤
    1. 双击状态为"未预约"的号源卡片
    2. 在弹出的患者选择弹窗中选择患者
    3. 点击"确定"按钮
  • 预期结果:卡片状态更新为"已预约",显示患者信息
  • 可用测试数据当前日期的未预约号源TICKET000001-TICKET000010

4.1.4 取消预约功能-正常流程

  • 测试步骤
    1. 右键状态为"已预约"的号源卡片
    2. 选择"取消预约"选项
    3. 在二次确认弹窗中点击"确认"按钮
  • 预期结果:号源状态恢复为"未预约",清除患者信息
  • 可用测试数据已预约号源TICKET000011、TICKET000012

4.1.5 医生搜索框-实时搜索

  • 测试步骤
    1. 在左侧边栏的医生搜索框中输入医生姓名
    2. 观察医生列表的实时更新
  • 预期结果:医生列表根据输入内容实时筛选显示
  • 可用测试数据:张三、王五

4.1.6 号源类型切换-联动过滤

  • 测试步骤
    1. 在左侧边栏切换号源类型为"专家号"
    2. 观察右侧号源卡片和左侧医生列表
  • 预期结果:仅显示专家号的号源和医生
  • 可用测试数据专家号TICKET000014-TICKET000018

4.2 逆向测试用例

4.2.1 号源预约功能-未选择患者

  • 测试步骤
    1. 双击状态为"未预约"的号源卡片
    2. 不选择患者直接点击"确定"按钮
  • 预期结果:提示"请选择患者"

4.2.2 取消预约功能-已取号状态

  • 测试步骤
    1. 右键状态为"已取号"的号源卡片
  • 预期结果:右键菜单不显示"取消预约"选项
  • 可用测试数据已取号源TICKET000013

4.2.3 患者信息搜索框组-无效输入

  • 测试步骤
    1. 在患者信息搜索框组中输入无效的姓名、就诊卡号或手机号
    2. 点击查询按钮
  • 预期结果:返回无结果或提示"未找到匹配的患者"
  • 可用测试数据:输入不存在的姓名(如"测试患者")、就诊卡号(如"PAT999")或手机号(如"13999999999"

4.2.4 日期选择器-无效日期

  • 测试步骤
    1. 在号源日期选择器中输入无效日期(如过去日期或格式错误)
    2. 尝试查询号源
  • 预期结果:提示"请输入有效日期"

4.2.5 医生搜索框-无匹配结果

  • 测试步骤
    1. 在医生搜索框中输入不存在的医生姓名
    2. 观察医生列表
  • 预期结果:显示"无匹配结果"或空列表
  • 可用测试数据:输入不存在的医生姓名(如"李四"

5. 测试结果记录

用例名 测试步骤 预期结果 实际结果 测试时间 测试人
号源日期选择器-默认值 1. 打开门诊预约挂号界面
2. 检查号源日期选择器的默认值
默认值为当前系统日期
状态筛选下拉框-默认值 1. 打开门诊预约挂号界面
2. 检查状态筛选下拉框的默认值
默认值为"未预约"
号源预约功能-正常流程 1. 双击状态为"未预约"的号源卡片
2. 在弹出的患者选择弹窗中选择患者
3. 点击"确定"按钮
卡片状态更新为"已预约",显示患者信息
取消预约功能-正常流程 1. 右键状态为"已预约"的号源卡片
2. 选择"取消预约"选项
3. 在二次确认弹窗中点击"确认"按钮
号源状态恢复为"未预约",清除患者信息
医生搜索框-实时搜索 1. 在左侧边栏的医生搜索框中输入医生姓名
2. 观察医生列表的实时更新
医生列表根据输入内容实时筛选显示
号源类型切换-联动过滤 1. 在左侧边栏切换号源类型为"专家号"
2. 观察右侧号源卡片和左侧医生列表
仅显示专家号的号源和医生
号源预约功能-未选择患者 1. 双击状态为"未预约"的号源卡片
2. 不选择患者直接点击"确定"按钮
提示"请选择患者"
取消预约功能-已取号状态 1. 右键状态为"已取号"的号源卡片 右键菜单不显示"取消预约"选项
患者信息搜索框组-无效输入 1. 在患者信息搜索框组中输入无效的姓名、就诊卡号或手机号
2. 点击查询按钮
返回无结果或提示"未找到匹配的患者"
日期选择器-无效日期 1. 在号源日期选择器中输入无效日期(如过去日期或格式错误)
2. 尝试查询号源
提示"请输入有效日期"
医生搜索框-无匹配结果 1. 在医生搜索框中输入不存在的医生姓名
2. 观察医生列表
显示"无匹配结果"或空列表

6. 注意事项

  1. 数据唯一性:脚本使用条件判断避免重复插入数据
  2. 日期更新:脚本中的日期会自动使用当前系统日期
  3. 依赖关系:号源数据依赖于医生和患者的基础数据,请确保系统中已有相关记录
  4. 测试顺序:建议先执行正向测试,再执行逆向测试
  5. 数据清理测试完成后可使用以下SQL清理测试数据
    DELETE FROM clinical_ticket WHERE bus_no LIKE 'TICKET%';
    DELETE FROM cli_reservation_record WHERE patient_name IN ('患者A', '患者B');
    

7. 常见问题

7.1 执行脚本时提示表不存在

  • 检查数据库连接是否正确
  • 检查是否已创建相关表结构
  • 检查模式名是否为hisdev

7.2 测试数据不显示

  • 检查日期选择器是否选择了正确的日期
  • 检查状态筛选条件是否为"未预约"
  • 检查医生选择是否正确

7.3 预约功能无法正常工作

  • 检查患者选择弹窗是否能正常加载患者数据
  • 检查网络连接是否正常
  • 检查浏览器控制台是否有错误信息

版本1.0
创建时间2025-12-31
更新记录:

  • 2025-12-31初始版本完成测试数据说明和测试指南