Files
everything-is-suitable/everything-is-suitable-admin/e2e/uat/README.md
T
张翔 08ea5fbe98 feat(admin): 添加用户管理相关文件
添加用户管理视图、API和状态管理文件
2026-03-28 14:37:29 +08:00

180 lines
5.6 KiB
Markdown

# UAT 测试文档
## 概述
UAT (User Acceptance Testing) 测试是用户验收测试,用于验证系统是否满足业务需求和用户期望。UAT测试从最终用户的角度出发,模拟真实用户的使用场景。
## 测试框架
UAT测试基于 Playwright 框架,采用 BDD (Behavior-Driven Development) 风格,使用 Given-When-Then 结构描述测试步骤。
### 核心文件
- `uat-base.ts`: UAT测试基础框架,包含测试夹具、测试步骤和断言工具
- `uat-001-auth.spec.ts`: 用户认证相关测试
- `uat-002-user-management.spec.ts`: 用户管理功能测试
- `uat-003-almanac.spec.ts`: 黄历查询功能测试
- `uat-004-fortune.spec.ts`: 运势分析功能测试
- `uat-005-ziwei.spec.ts`: 紫微斗数功能测试
## 运行UAT测试
### 前置条件
1. 确保后端服务已启动
2. 确保前端开发服务器已启动
3. 确保数据库已初始化测试数据
### 运行所有UAT测试
```bash
npm run test:e2e
```
### 运行特定UAT测试套件
```bash
# 运行认证测试
npx playwright test e2e/uat/uat-001-auth.spec.ts
# 运行用户管理测试
npx playwright test e2e/uat/uat-002-user-management.spec.ts
# 运行黄历查询测试
npx playwright test e2e/uat/uat-003-almanac.spec.ts
# 运行运势分析测试
npx playwright test e2e/uat/uat-004-fortune.spec.ts
# 运行紫微斗数测试
npx playwright test e2e/uat/uat-005-ziwei.spec.ts
```
### 运行UAT测试(UI模式)
```bash
npx playwright test e2e/uat --ui
```
### 调试UAT测试
```bash
npx playwright test e2e/uat --debug
```
## 测试用例说明
### UAT-001: 用户注册和登录流程
| 用例ID | 用例名称 | 描述 |
|---------|---------|------|
| UAT-001-01 | 用户成功登录系统 | 验证用户使用正确的凭据登录系统 |
| UAT-001-02 | 用户登录失败 - 错误密码 | 验证使用错误密码登录时显示错误消息 |
| UAT-001-03 | 用户登出系统 | 验证用户成功登出系统 |
### UAT-002: 用户管理功能
| 用例ID | 用例名称 | 描述 |
|---------|---------|------|
| UAT-002-01 | 查看用户列表 | 验证用户可以查看用户列表 |
| UAT-002-02 | 创建新用户 | 验证用户可以创建新用户 |
| UAT-002-03 | 编辑用户信息 | 验证用户可以编辑用户信息 |
| UAT-002-04 | 删除用户 | 验证用户可以删除用户 |
| UAT-002-05 | 搜索用户 | 验证用户可以搜索用户 |
### UAT-003: 黄历查询功能
| 用例ID | 用例名称 | 描述 |
|---------|---------|------|
| UAT-003-01 | 查询单日黄历 | 验证用户可以查询指定日期的黄历 |
| UAT-003-02 | 查看宜忌事项 | 验证黄历显示正确的宜忌事项 |
| UAT-003-03 | 查看吉凶方位 | 验证黄历显示正确的吉凶方位 |
| UAT-003-04 | 查看冲煞信息 | 验证黄历显示正确的冲煞信息 |
| UAT-003-05 | 查看建除十二神 | 验证黄历显示正确的建除十二神 |
### UAT-004: 运势分析功能
| 用例ID | 用例名称 | 描述 |
|---------|---------|------|
| UAT-004-01 | 查看每日运势 | 验证用户可以查看每日运势 |
| UAT-004-02 | 查看每月运势 | 验证用户可以查看每月运势 |
| UAT-004-03 | 查看每年运势 | 验证用户可以查看每年运势 |
| UAT-004-04 | 查看宫位运势 | 验证运势显示正确的宫位信息 |
| UAT-004-05 | 查看幸运信息 | 验证运势显示正确的幸运色、数字、方位 |
### UAT-005: 紫微斗数功能
| 用例ID | 用例名称 | 描述 |
|---------|---------|------|
| UAT-005-01 | 生成紫微斗数命盘 | 验证用户可以生成紫微斗数命盘 |
| UAT-005-02 | 查看十二宫位 | 验证命盘显示正确的十二宫位 |
| UAT-005-03 | 查看主星排列 | 验证命盘显示正确的主星排列 |
| UAT-005-04 | 查看四化飞星 | 验证命盘显示正确的四化飞星 |
| UAT-005-05 | 查看命盘分析 | 验证命盘显示正确的分析结果 |
| UAT-005-06 | 保存命盘 | 验证用户可以保存命盘 |
## 测试数据
UAT测试使用以下测试数据:
### 用户认证
- 用户名: `admin`
- 密码: `admin123`
### 测试用户创建
- 用户名: `testuser_${timestamp}`
- 邮箱: `testuser_${timestamp}@example.com`
- 密码: `Test@123456`
- 角色: `USER``ADMIN`
- 状态: `ACTIVE`
### 黄历查询
- 测试日期: `2024-01-01`
### 运势分析
- 测试日期: `2024-01-15`
### 紫微斗数
- 出生日期: `1990-05-15`
- 出生时间: `08:30`
- 性别: `MALE`
## 测试报告
UAT测试执行后会生成以下报告:
1. **HTML报告**: `playwright-report/index.html`
2. **JSON报告**: `test-results/results.json`
3. **截图**: 失败测试的截图保存在 `test-results/` 目录
4. **视频**: 失败测试的视频保存在 `test-results/` 目录
## 最佳实践
1. **测试独立性**: 每个测试用例应该独立运行,不依赖其他测试用例
2. **测试清理**: 每个测试用例执行后应该清理测试数据
3. **测试覆盖**: UAT测试应该覆盖所有关键业务流程
4. **测试文档**: 每个测试用例应该有清晰的描述和预期结果
5. **测试维护**: 定期更新UAT测试以反映业务需求的变化
## 故障排查
### 常见问题
1. **测试超时**
- 检查网络连接
- 检查后端服务是否正常运行
- 增加测试超时时间
2. **元素定位失败**
- 检查页面是否完全加载
- 检查元素选择器是否正确
- 使用 Playwright 的等待机制
3. **测试数据问题**
- 检查数据库是否有正确的测试数据
- 检查测试数据是否被其他测试修改
- 使用唯一的测试数据标识符
## 联系方式
如有问题,请联系测试团队或查看项目文档。