EMPLOYEE-TEST-GUIDE.md 8.7 KB

员工管理功能测试指南

🎯 测试目标

验证员工管理页面能够正确显示企微手机号和昵称,确保数据优先级逻辑正确。


🚀 快速开始

1. 启动开发服务器

cd yss-project
ng serve

2. 访问员工管理页面

http://localhost:4200/admin/employees

📋 测试清单

✅ 基础功能测试

1. 页面加载测试

  • 页面正常加载,无编译错误
  • 员工列表正常显示
  • 统计卡片显示正确数量
  • 筛选功能正常工作

2. 手机号显示测试

测试场景A:有企微手机号

  • 显示企微同步的手机号(data.wxworkInfo.mobile)
  • 格式正确(11位数字)
  • 不显示其他来源的手机号

测试场景B:无企微手机号,有data.mobile

  • 显示 data.mobile 字段的手机号
  • 格式正确

测试场景C:只有json.mobile

  • 显示 json.mobile 字段的手机号
  • 格式正确

测试场景D:所有手机号字段都为空

  • 显示空字符串或 "-"
  • 不报错

3. 姓名显示测试

测试场景A:有真实姓名和昵称

  • 显示格式:真实姓名 (昵称)
  • 例如:张三 (小张)

测试场景B:只有昵称

  • 显示昵称
  • 例如:小张

测试场景C:只有真实姓名

  • 显示真实姓名
  • 例如:张三

测试场景D:都为空

  • 显示"未知"

4. 企微昵称优先级测试

  • 优先显示 data.wxworkInfo.name(企微昵称)
  • 其次显示 json.name
  • 最后显示 data.name

🔧 编辑功能测试

1. 打开编辑面板

  1. 点击任意员工的"编辑"按钮
  2. 检查编辑面板是否正常打开
  3. 检查表单字段是否正确填充

2. 表单字段验证

真实姓名字段

  • 显示当前真实姓名(如果有)
  • 可以编辑
  • 提示文字:"用于正式文档、合同签署等场合"

昵称字段

  • 显示当前昵称
  • 可以编辑
  • 提示文字:"用于日常沟通,可以是昵称、花名等"

手机号字段

  • 显示当前手机号
  • 可以编辑
  • 限制11位
  • 必填验证

企微ID字段

  • 显示企微ID
  • 只读(disabled)
  • 提示文字:"企微ID由系统同步,不可修改"

3. 保存功能测试

正常保存

  1. 修改真实姓名为"测试姓名"
  2. 修改昵称为"测试昵称"
  3. 修改手机号为"13800138000"
  4. 点击"保存"按钮
  5. 检查:
    • 显示"员工信息更新成功!"提示
    • 编辑面板自动关闭
    • 列表刷新,显示新数据
    • 控制台输出保存日志

手机号格式验证

  1. 输入错误格式手机号:"12345678901"
  2. 点击"保存"
  3. 检查:
    • 显示"请输入正确的手机号格式"提示
    • 不保存数据
    • 面板不关闭

必填字段验证

  1. 清空昵称字段
  2. 点击"保存"
  3. 检查:
    • 显示"请输入员工姓名"提示
    • 不保存数据

🔍 数据验证测试

1. 控制台日志检查

打开浏览器控制台(F12),查看以下日志:

加载时

// 应该看到类似的日志
✅ 员工数据加载成功
员工数量: X

保存时

// 应该看到类似的日志
✅ 员工信息已保存到Parse数据库
{
  id: "xxx",
  name: "测试昵称",
  realname: "测试姓名",
  mobile: "13800138000",
  roleName: "组员",
  departmentId: "xxx",
  isDisabled: false
}

2. 数据库验证

使用 Parse Dashboard

  1. 登录 Parse Dashboard
  2. 选择 Profile 表
  3. 找到刚才编辑的员工记录
  4. 检查字段:
    • name 字段更新为新昵称
    • mobile 字段更新为新手机号
    • data.realname 字段更新为新真实姓名
    • 其他字段未被修改

📊 测试数据准备

创建测试员工数据

如果需要测试数据,可以在 Parse Dashboard 中手动创建:

// Profile 表
{
  name: "小张",
  mobile: "13800000000",
  userid: "wxwork-test-001",
  roleName: "组员",
  department: { __type: "Pointer", className: "Department", objectId: "dept-001" },
  data: {
    realname: "张三",
    mobile: "13811111111",
    wxworkInfo: {
      name: "张三(设计)",
      mobile: "13812345678",  // 这个应该优先显示
      userid: "wxwork-test-001",
      avatar: "https://via.placeholder.com/100",
      position: "设计师"
    }
  }
}

预期显示

  • 姓名:张三 (张三(设计))
  • 手机号:13812345678

🧪 边界情况测试

1. 空数据测试

创建一个几乎空的员工记录:

{
  userid: "wxwork-empty-001",
  roleName: "组员"
}

预期

  • 姓名显示"未知"
  • 手机号显示空或"-"
  • 不报错

2. 格式错误的手机号

{
  name: "测试",
  mobile: "12345",  // 错误格式
  data: {
    wxworkInfo: {
      mobile: "abcdefghijk"  // 错误格式
    }
  }
}

预期

  • 显示错误格式的手机号(不做前端过滤)
  • 编辑时验证不通过
  • 保存时提示格式错误

3. 超长字符串

{
  name: "这是一个非常非常非常非常长的昵称测试数据",
  data: {
    realname: "这是一个非常非常非常非常长的真实姓名测试数据"
  }
}

预期

  • 页面布局不错乱
  • 文字正常显示或截断
  • 不影响其他行

🎨 UI/UX 测试

1. 响应式测试

桌面端(> 1200px)

  • 表格列宽合适
  • 所有内容可见
  • 编辑面板宽度合适

平板端(768px - 1200px)

  • 表格可横向滚动
  • 编辑面板适配
  • 统计卡片自适应

移动端(< 768px)

  • 表格可横向滚动
  • 编辑面板全屏显示
  • 按钮大小适合触摸

2. 交互测试

筛选功能

  • 点击统计卡片可筛选
  • 搜索框实时搜索
  • 重置按钮清空筛选

编辑面板

  • 打开动画流畅
  • 关闭动画流畅
  • 点击遮罩层关闭
  • ESC键关闭

表单交互

  • 输入框获得焦点高亮
  • 下拉框选择正常
  • 保存按钮加载状态
  • 错误提示清晰

📱 企微环境测试

1. 在企微中打开

企业微信 → 工作台 → 系统管理 → 员工管理

2. 检查项

  • 页面正常加载
  • 企微授权正常
  • 数据正确显示
  • 编辑保存正常
  • 企微昵称正确显示
  • 企微手机号正确显示

🔄 回归测试

修改前后对比

测试项 修改前 修改后 状态
手机号来源 不确定 优先企微
昵称显示 不确定 优先企微昵称
真实姓名 未区分 独立字段
编辑功能 正常 正常
保存功能 正常 正常

🐛 已知问题

问题1:企微数据未同步

现象:data.wxworkInfo 字段为空

原因:员工数据未从企微同步

解决

  1. 检查企微同步任务是否正常运行
  2. 手动触发同步
  3. 或手动编辑员工信息填写手机号

问题2:手机号格式不统一

现象:有的手机号有空格或特殊字符

原因:企微同步的数据格式不统一

解决

  1. 在保存时自动清理格式
  2. 添加格式化函数

✅ 测试通过标准

所有以下项目都通过即为测试完成:

功能测试

  • 页面正常加载
  • 手机号优先显示企微号码
  • 昵称优先显示企微昵称
  • 真实姓名和昵称正确显示
  • 编辑功能正常
  • 保存功能正常
  • 验证功能正常

数据测试

  • 数据优先级正确
  • 数据库保存正确
  • 数据刷新正确

UI测试

  • 响应式布局正常
  • 交互流畅
  • 错误提示清晰

📝 测试报告模板

# 员工管理功能测试报告

**测试时间**: 2025-11-01
**测试人员**: [你的名字]
**测试环境**: Chrome 浏览器 + localhost:4200

## 测试结果

### 1. 基础功能
- [ ] 页面加载: ✅ 通过 / ❌ 失败
- [ ] 手机号显示: ✅ 通过 / ❌ 失败
- [ ] 姓名显示: ✅ 通过 / ❌ 失败

### 2. 编辑功能
- [ ] 打开编辑: ✅ 通过 / ❌ 失败
- [ ] 表单验证: ✅ 通过 / ❌ 失败
- [ ] 保存功能: ✅ 通过 / ❌ 失败

### 3. 数据验证
- [ ] 数据优先级: ✅ 通过 / ❌ 失败
- [ ] 数据库保存: ✅ 通过 / ❌ 失败

## 发现的问题

1. [问题描述]
2. [问题描述]

## 改进建议

1. [建议内容]
2. [建议内容]

## 总体评价

[总体评价内容]

祝测试顺利! 🎉

如有问题,请查看控制台日志或联系开发团队。