Files
novalon-manage-system/uat-tests

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       # 依赖配置

快速开始

安装依赖

cd uat-tests
npm install
npx playwright install --with-deps

配置环境变量

cp .env.example .env
# 编辑.env文件,设置测试环境URL

运行测试

# 运行所有UAT测试
npm run test

# 运行特定场景
npx playwright test scenarios/user-lifecycle/

# 调试模式
npm run test:debug

# 查看测试报告
npm run test:report

测试场景

用户生命周期场景

  • 新用户注册与激活
  • 用户信息变更
  • 用户角色演进

角色管理场景

  • 角色分配与权限验证

多角色协作场景

  • 跨部门协作流程
  • 数据一致性验证

质量门禁

质量门禁标准:

  • 通过率 >= 95%
  • 不稳定率 <= 5%
  • 执行时间 <= 10分钟

运行质量门禁检查:

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/目录

环境问题

确保测试环境已启动:

cd ..
docker-compose -f docker-compose.test.yml up -d

贡献指南

添加新的UAT测试场景:

  1. scenarios/目录下创建新的场景文件
  2. 使用ScenarioRunnerUATHelper工具
  3. 遵循现有的测试模式和命名约定
  4. 添加相应的测试数据到data/目录

许可证

Copyright © 2024 Novalon. All rights reserved.