safety-eval-service-frontend/docs/test-reports/测试文档.md

212 lines
7.9 KiB
Markdown
Raw Permalink Normal View History

2026-06-23 18:07:30 +08:00
# 企业信息管理 — 测试报告(最新)
> 覆盖模块:机构信息、部门岗位、人员信息、人员变更、离职申请、资质证书、装备信息
> 原型对照:`docs/原型/设计文件 (3).pdf` ~ `设计文件 (9).pdf`
> 更新日期2026-06-23
---
## 1. 测试环境
| 项 | 说明 |
|---|---|
| 前端 | `safety-eval-service-frontend``npm run dev` / `pnpm dev` |
| 后端 | `safety-eval-service``http://127.0.0.1:8095/safety-eval`profile=`local` |
| 数据库 | 执行 `safety-eval-service/docs/init-v2.sql` 及末尾测试数据段 |
| Node | `source scripts/setup-test-env.sh` 或 JetBrains Node 24.x |
---
## 2. 自动化脚本
### 2.1 接口联调(细粒度)
```bash
cd safety-eval-service-frontend
source scripts/setup-test-env.sh # 可选
node scripts/test-enterprise-info-granular.mjs
```
- 脚本:`scripts/test-enterprise-info-granular.mjs`
- 覆盖8 模块 CRUD、分页、搜索、字段组装`deptName`/`postName`/`account`/`auditStatusCode`
- 环境变量:`API_BASE`(默认 `http://127.0.0.1:8095/safety-eval`
### 2.2 前端 UI 静态检查
```bash
node scripts/test-enterprise-info-ui-check.mjs
```
- 脚本:`scripts/test-enterprise-info-ui-check.mjs`
- 检查:公共工具、列表列、弹窗布局、变更次数样式、默认上传配置
### 2.3 一键执行
```bash
node scripts/test-enterprise-info-granular.mjs && node scripts/test-enterprise-info-ui-check.mjs
```
---
## 3. 问题修复对照(用户反馈 8 项)
| # | 问题 | 处理方式 | 验证用例 |
|---|------|----------|----------|
| 1 | 列表未展示部门/岗位 | 后端 `OrgPersonnelViewEnricher` 组装 `deptName`/`postName`;前端 adapter 映射 | EI-API-STAFF-05~08UI-STAFF-03 |
| 2 | 新增/编辑文字遮挡 | 弹窗改 `layout="vertical"``labelCol/wrapperCol=24` | UI-PAGE-*-03手工打开各模块弹窗 |
| 3 | 离职缺审核状态/用户名 | CO 增 `account`enricher 组装;列表 Tag 展示 | EI-API-RESIGN-04~05UI-RESIGN-01~02 |
| 4 | 页面卡顿/报错 | 去掉失败的上传/删文件调用;修复 SELECT 空选项 | 控制台无红错;列表加载 <3s |
| 5 | 变更次数配色 | `CHANGE_COUNT_STYLE` 蓝色高亮/灰色零值 | UI-CHANGE-01人员变更列表目视 |
| 6 | 新增人员部门/岗位不可选 | 人员表单改用 antd `Select``formSelectField` 适配 Search | UI-STAFF-01~02TC-STAFF-03 |
| 7 | 上传默认通过 | `src/utils/mockUpload.js` 固定 URL | UI-COMMON-03TC-UPLOAD-* |
| 8 | 其他页面问题 | 见第 4 节用例矩阵 | 全量手工 + 自动化 |
---
## 4. 测试用例矩阵
### 4.1 机构信息(原型:设计文件 3
| ID | 类型 | 步骤 | 预期 |
|----|------|------|------|
| TC-ORG-01 | UI | 进入机构信息页 | 标题/副标题与原型一致;表单只读 |
| TC-ORG-02 | 功能 | 点击修改 → 暂存 | 成功提示;`authStatusCode=0` |
| TC-ORG-03 | 功能 | 点击提交 | 成功提示;字段回显正确 |
| TC-ORG-04 | API | EI-API-ORG-* | 分页/详情/修改通过 |
### 4.2 部门岗位(原型:设计文件 4
| ID | 类型 | 步骤 | 预期 |
|----|------|------|------|
| TC-DEPT-01 | UI | 左侧树 + 右侧列表 | 布局与原型一致 |
| TC-DEPT-02 | 功能 | 新增/编辑部门 | 弹窗 vertical文字不遮挡 |
| TC-DEPT-03 | 功能 | 进入岗位列表,增删改岗位 | 岗位关联当前部门 |
| TC-DEPT-04 | API | EI-API-DEPT/POS-* | 通过 |
### 4.3 人员信息(原型:设计文件 5
| ID | 类型 | 步骤 | 预期 |
|----|------|------|------|
| TC-STAFF-01 | UI | 列表列 | 用户名称、账号、**部门**、**岗位**、证照 |
| TC-STAFF-02 | 功能 | 搜索部门/岗位 | 下拉有选项,筛选生效 |
| TC-STAFF-03 | 功能 | 新增人员,选部门后选岗位 | 岗位按部门过滤,可提交 |
| TC-STAFF-04 | 功能 | 编辑/查看/重置密码/删除 | 各操作正常 |
| TC-STAFF-05 | 功能 | 证书子页 | 上传默认 URL增删改查 |
| TC-STAFF-06 | API | EI-API-STAFF/CERT-* | 通过;列表含 deptName/postName |
### 4.4 人员变更(原型:设计文件 6
| ID | 类型 | 步骤 | 预期 |
|----|------|------|------|
| TC-CHANGE-01 | UI | 信息变更数 >0 | 蓝色链接样式,可点进日志 |
| TC-CHANGE-02 | UI | 变更数 =0 | 灰色显示 |
| TC-CHANGE-03 | 功能 | 离职审核通过/退回 | 状态 Tag 更新 |
| TC-CHANGE-04 | API | EI-API-CHANGE-* | 分页通过 |
### 4.5 离职申请(原型:设计文件 7
| ID | 类型 | 步骤 | 预期 |
|----|------|------|------|
| TC-RESIGN-01 | UI | 列表 | 用户名、姓名、部门、**审核状态 Tag** |
| TC-RESIGN-02 | 功能 | 新增离职申请 | 弹窗 vertical上传默认通过 |
| TC-RESIGN-03 | 功能 | 按审核状态筛选 | 结果正确 |
| TC-RESIGN-04 | API | EI-API-RESIGN-* | account/auditStatusCode 有值 |
### 4.6 资质证书(原型:设计文件 8
| ID | 类型 | 步骤 | 预期 |
|----|------|------|------|
| TC-QUAL-01 | UI | 列表/弹窗 | 标签不遮挡;保密提示可见 |
| TC-QUAL-02 | 功能 | 新增证书 + 上传 | 默认图片 URL 写入 `certImageUrl` |
| TC-QUAL-03 | API | EI-API-QUAL-* | 通过 |
### 4.7 装备信息(原型:设计文件 9
| ID | 类型 | 步骤 | 预期 |
|----|------|------|------|
| TC-EQUIP-01 | UI | 列表/弹窗 | 双列表单,标签完整 |
| TC-EQUIP-02 | 功能 | 是否双路下拉 | 可选是/否 |
| TC-EQUIP-03 | API | EI-API-EQUIP-* | 通过 |
### 4.8 上传(全局)
| ID | 类型 | 步骤 | 预期 |
|----|------|------|------|
| TC-UPLOAD-01 | 功能 | 离职报告上传 | `reportFileUrl` = 默认 URL |
| TC-UPLOAD-02 | 功能 | 机构/人员证书上传 | `certImageUrl` / `certAttachmentUrl` = 默认 URL |
---
## 5. 原型 UI 对照检查清单
手工打开各页,对照 PDF 检查:
- [ ] 页面标题、副标题文案
- [ ] 搜索区字段与原型一致
- [ ] 表格列顺序、列名
- [ ] 主按钮文案(新增/添加)
- [ ] 弹窗宽度、表单项顺序
- [ ] 信息变更数颜色(蓝/灰)
- [ ] 审核状态 Tag 颜色(灰/绿/红)
- [ ] 无控制台 Error / 无长时间 Loading
---
## 6. 执行记录2026-06-23 第二轮)
```
接口测试: 58 / 58 通过
UI 静态检查: 31 / 31 通过
本轮修复:
- 资质 remark 全链路 + 启用/禁用按钮
- 人员变更:账户列、变更数颜色(String key)、就职状态/审核状态 Tag、后端 employmentStatusCode 查询
- 人员移除重置密码、birthDate dayjs 回显/提交格式化
- 部门岗位:左树右岗布局,按 deptId 查岗位
- 离职账户列、remark 分离、personnelId 自动匹配、时间格式化
- 装备instrumentType 列表字段、表单回显
- 时间formatDateTime → YYYY-MM-DD HH:mm:ss
```
## 7. 执行记录2026-06-23 第一轮)
```
执行人:自动化脚本
执行时间2026-06-23后端重启后
后端http://127.0.0.1:8095/safety-eval
接口测试: 58 / 58 通过
UI 静态检查: 31 / 31 通过
字段组装验证(已通过):
- EI-API-STAFF-05~08deptName / postName 正常
- EI-API-RESIGN-04~05auditStatusCode / account 正常
重跑命令:
source scripts/setup-test-env.sh
node scripts/test-enterprise-info-granular.mjs
node scripts/test-enterprise-info-ui-check.mjs
```
### 6.1 手工记录模板
---
## 7. 已知限制
1. **上传**:联调阶段不走真实文件服务,统一写入固定花瓣 URL。
2. **原型像素级**PDF 与 Ant Design 组件存在间距差异,以字段/交互一致为准。
3. **人员变更删除**:列表删除为变更记录删除,与人员主数据删除不同,需与产品确认。
---
## 8. 相关代码路径
| 用途 | 路径 |
|------|------|
| 页面 | `src/pages/Container/EnterpriseInfo/**` |
| API 适配 | `src/api/enterpriseInfo/adapter.js` |
| 表单工具 | `src/utils/enterpriseForm.js` |
| 上传 Mock | `src/utils/mockUpload.js` |
| 后端组装 | `safety-eval-app/.../OrgPersonnelViewEnricher.java` |