140 lines
3.2 KiB
Markdown
140 lines
3.2 KiB
Markdown
# UAT Test Suite
|
|
|
|
UAT测试套件用于验证Novalon管理系统的用户验收测试场景。
|
|
|
|
## 目录结构
|
|
|
|
```
|
|
uat-tests/
|
|
├── config/ # 配置文件
|
|
│ └── uat-config.ts # UAT配置
|
|
├── data/ # 测试数据
|
|
│ ├── users.json # 用户数据
|
|
│ ├── roles.json # 角色数据
|
|
│ └── scenarios.json # 场景数据
|
|
├── scenarios/ # 测试场景
|
|
│ ├── user-lifecycle/ # 用户生命周期场景
|
|
│ ├── role-management/ # 角色管理场景
|
|
│ ├── collaboration/ # 多角色协作场景
|
|
│ ├── permission/ # 权限验证场景
|
|
│ └── audit/ # 审计场景
|
|
├── utils/ # 工具类
|
|
│ ├── uat-helper.ts # UAT辅助工具
|
|
│ ├── scenario-runner.ts # 场景运行器
|
|
│ └── data-loader.ts # 数据加载器
|
|
├── pages/ # 页面对象
|
|
│ └── UserManagementPage.ts
|
|
├── screenshots/ # 截图目录
|
|
├── test-results/ # 测试结果
|
|
├── playwright.config.ts # Playwright配置
|
|
├── run-uat-tests.sh # 测试运行脚本
|
|
├── quality-gate.js # 质量门禁检查
|
|
└── package.json # 依赖配置
|
|
```
|
|
|
|
## 快速开始
|
|
|
|
### 安装依赖
|
|
|
|
```bash
|
|
cd uat-tests
|
|
npm install
|
|
npx playwright install --with-deps
|
|
```
|
|
|
|
### 配置环境变量
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
# 编辑.env文件,设置测试环境URL
|
|
```
|
|
|
|
### 运行测试
|
|
|
|
```bash
|
|
# 运行所有UAT测试
|
|
npm run test
|
|
|
|
# 运行特定场景
|
|
npx playwright test scenarios/user-lifecycle/
|
|
|
|
# 调试模式
|
|
npm run test:debug
|
|
|
|
# 查看测试报告
|
|
npm run test:report
|
|
```
|
|
|
|
## 测试场景
|
|
|
|
### 用户生命周期场景
|
|
|
|
- 新用户注册与激活
|
|
- 用户信息变更
|
|
- 用户角色演进
|
|
|
|
### 角色管理场景
|
|
|
|
- 角色分配与权限验证
|
|
|
|
### 多角色协作场景
|
|
|
|
- 跨部门协作流程
|
|
- 数据一致性验证
|
|
|
|
## 质量门禁
|
|
|
|
质量门禁标准:
|
|
|
|
- 通过率 >= 95%
|
|
- 不稳定率 <= 5%
|
|
- 执行时间 <= 10分钟
|
|
|
|
运行质量门禁检查:
|
|
|
|
```bash
|
|
npm run test:quality-gate
|
|
```
|
|
|
|
## CI/CD集成
|
|
|
|
UAT测试已集成到Woodpecker CI/CD流水线中,在每次push和pull request时自动运行。
|
|
|
|
## 最佳实践
|
|
|
|
1. **测试数据隔离**:每个测试使用独立的数据,避免相互影响
|
|
2. **智能等待**:使用UATHelper提供的智能等待方法,避免固定等待
|
|
3. **截图记录**:测试失败时自动截图,便于调试
|
|
4. **并行执行**:支持多worker并行执行,提高测试效率
|
|
5. **跨浏览器测试**:支持Chrome、Firefox、Safari浏览器测试
|
|
|
|
## 故障排查
|
|
|
|
### 测试失败
|
|
|
|
1. 查看测试报告:`npm run test:report`
|
|
2. 检查截图:`screenshots/`目录
|
|
3. 查看日志:`test-results/`目录
|
|
|
|
### 环境问题
|
|
|
|
确保测试环境已启动:
|
|
|
|
```bash
|
|
cd ..
|
|
docker-compose -f docker-compose.test.yml up -d
|
|
```
|
|
|
|
## 贡献指南
|
|
|
|
添加新的UAT测试场景:
|
|
|
|
1. 在`scenarios/`目录下创建新的场景文件
|
|
2. 使用`ScenarioRunner`和`UATHelper`工具
|
|
3. 遵循现有的测试模式和命名约定
|
|
4. 添加相应的测试数据到`data/`目录
|
|
|
|
## 许可证
|
|
|
|
Copyright © 2024 Novalon. All rights reserved.
|