peixue-dev/Archive/peidu-temp-files/docs/[一次性]家长端打卡功能-测试指南-2026-01-26.md

7.1 KiB
Raw Blame History

🧪 家长端打卡功能 - 测试指南

测试日期: 2026-01-26
功能: 家长端查看陪伴员打卡记录


📋 测试前准备

1. 数据准备

确保数据库中有以下测试数据:

  • 用户账号(家长角色)
  • 订单数据(已完成的订单)
  • 打卡记录数据check_in_record表

2. 测试账号

  • 家长账号:手机号 + 密码
  • 确保该家长有已完成的订单

🎯 测试场景

场景1订单详情页面查看打卡记录

测试步骤

  1. 使用家长账号登录
  2. 进入"我的订单"
  3. 选择一个已完成的订单
  4. 点击进入订单详情
  5. 滚动到"服务记录"部分

预期结果

  • 显示"服务记录"标题
  • 显示签到记录卡片
    • 绿色图标 ✓
    • 签到时间格式2026-01-26 09:00
    • 签到地点(显示地址)
    • 签到照片(可点击)
  • 显示签退记录卡片
    • 蓝色图标 ✓
    • 签退时间
    • 签退地点
    • 签退照片(可点击)
  • 显示服务时长卡片
    • ⏱️ 图标
    • 服务时长2小时30分钟

测试点

  • 签到时间显示正确
  • 签退时间显示正确
  • 地址信息显示正确
  • 照片可以点击查看大图
  • 服务时长计算正确
  • 如果没有签到记录,不显示该部分

场景2打卡记录列表页面

测试步骤

  1. 使用家长账号登录
  2. 在浏览器地址栏输入:
    /user-package/pages/checkin/records
    
  3. 或在个人中心添加入口后点击进入

预期结果

  • 显示顶部统计卡片
    • 总服务次数
    • 本月服务次数
    • 累计时长
  • 显示筛选栏
    • 日期选择器
    • 清除筛选按钮
  • 显示记录列表
    • 每条记录包含:
      • 日期徽章(日+月)
      • 陪伴员姓名
      • 服务名称
      • 签到时间
      • 签退时间
      • 服务时长
      • 签到地点
      • 签到/签退照片
      • 服务状态(服务中/已完成)

测试点

  • 统计数据显示正确
  • 记录列表显示正确
  • 记录按时间倒序排列
  • 照片可以点击查看大图
  • 点击记录跳转到订单详情

场景3日期筛选功能

测试步骤

  1. 进入打卡记录列表页面
  2. 点击"选择日期"
  3. 选择一个日期2026-01-20
  4. 查看筛选结果
  5. 点击"清除筛选"

预期结果

  • 选择日期后,只显示该日期的记录
  • 清除筛选后,显示所有记录
  • 如果该日期没有记录,显示空状态

测试点

  • 日期选择器正常工作
  • 筛选结果正确
  • 清除筛选功能正常
  • 空状态显示正确

场景4分页加载

测试步骤

  1. 进入打卡记录列表页面
  2. 滚动到列表底部
  3. 触发加载更多
  4. 查看新加载的记录

预期结果

  • 滚动到底部时自动加载更多
  • 显示"加载中..."提示
  • 新记录追加到列表末尾
  • 没有更多数据时显示"没有更多了"

测试点

  • 自动加载功能正常
  • 加载提示显示正确
  • 数据不重复
  • 到达最后一页时停止加载

场景5照片查看功能

测试步骤

  1. 在订单详情或记录列表中
  2. 点击签到照片
  3. 查看大图
  4. 点击签退照片
  5. 查看大图

预期结果

  • 点击照片后全屏显示
  • 可以缩放查看
  • 可以关闭大图
  • 照片清晰可见

测试点

  • 照片可以点击
  • 大图显示正常
  • 可以缩放
  • 可以关闭

场景6空状态显示

测试步骤

  1. 使用没有订单的家长账号登录
  2. 进入打卡记录列表页面

预期结果

  • 显示空状态图标 📋
  • 显示提示文字"暂无服务记录"
  • 统计数据显示为0

测试点

  • 空状态显示正确
  • 提示文字清晰
  • 统计数据为0

🔍 API测试

测试1获取用户打卡记录列表

请求:

GET /api/checkin/user/records?userId=1&page=1&size=10

预期响应:

{
  "code": 200,
  "message": "success",
  "data": {
    "records": [
      {
        "id": 1,
        "orderId": 123,
        "userId": 1,
        "teacherId": 10,
        "checkType": "in",
        "checkTime": "2026-01-26T09:00:00",
        "address": "北京市朝阳区xxx",
        "photoUrl": "https://xxx.jpg",
        "latitude": 39.9,
        "longitude": 116.4
      }
    ],
    "total": 50,
    "page": 1,
    "size": 10
  }
}

测试点:

  • 返回状态码200
  • 数据结构正确
  • 记录数量正确
  • 分页参数正确

测试2获取打卡统计数据

请求:

GET /api/checkin/user/statistics?userId=1

预期响应:

{
  "code": 200,
  "message": "success",
  "data": {
    "totalRecords": 50,
    "thisMonth": 8,
    "totalHours": 0
  }
}

测试点:

  • 返回状态码200
  • 统计数据正确
  • 总次数准确
  • 本月次数准确

测试3日期筛选

请求:

GET /api/checkin/user/records?userId=1&page=1&size=10&date=2026-01-26

预期响应:

  • 只返回2026-01-26的记录

测试点:

  • 筛选结果正确
  • 日期格式正确
  • 没有其他日期的记录

🐛 异常测试

异常1用户未登录

  • 访问打卡记录列表
  • 预期:跳转到登录页面或首页

异常2网络错误

  • 断开网络
  • 访问打卡记录列表
  • 预期:显示"加载失败"提示

异常3照片加载失败

  • 照片URL无效
  • 预期:显示默认占位图

异常4数据为空

  • 用户没有任何打卡记录
  • 预期:显示空状态

测试检查清单

功能测试

  • 订单详情显示打卡记录
  • 打卡记录列表显示
  • 统计数据显示
  • 日期筛选功能
  • 分页加载功能
  • 照片查看功能
  • 跳转订单详情
  • 空状态显示

UI测试

  • 页面布局正确
  • 颜色搭配合理
  • 字体大小适中
  • 图标显示正确
  • 照片显示清晰
  • 响应式布局

性能测试

  • 列表加载速度
  • 照片加载速度
  • 滚动流畅度
  • 内存占用合理

兼容性测试

  • iOS系统
  • Android系统
  • 微信小程序
  • 不同屏幕尺寸

📝 测试记录

测试环境

  • 测试时间____年__月__日
  • 测试人员________
  • 测试设备________
  • 系统版本________

测试结果

测试项 结果 备注
订单详情显示 ☐ 通过 ☐ 失败
记录列表显示 ☐ 通过 ☐ 失败
日期筛选 ☐ 通过 ☐ 失败
分页加载 ☐ 通过 ☐ 失败
照片查看 ☐ 通过 ☐ 失败
API接口 ☐ 通过 ☐ 失败

发现的问题


🚀 测试通过后

  1. 标记所有测试项为通过
  2. 记录测试结果
  3. 提交测试报告
  4. 通知开发团队
  5. 准备上线部署

📞 问题反馈

如果测试中发现问题,请记录:

  • 问题描述
  • 复现步骤
  • 预期结果
  • 实际结果
  • 截图或录屏

联系开发人员进行修复。