Commit Graph

14 Commits

Author SHA1 Message Date
张翔 9609745ead test(e2e): 修复测试套件并提升通过率至97.30%
- 更新网关配置以符合Spring Boot 3.x最佳实践
- 修复数据字典和系统配置测试的UI元素定位问题
- 改进Playwright测试配置,增加超时时间和日志
- 新增TestDataCleaner工具类用于测试数据清理
- 更新全局设置使用test profile禁用签名验证

测试通过率从59.57%提升至97.30%,提升了37.73%
2026-04-28 20:10:44 +08:00
张翔 2971258fa0 chore(frontend): 更新前端配置和依赖
- 更新Dockerfile配置
- 更新测试环境配置
- 更新依赖锁定文件
2026-04-15 23:35:19 +08:00
张翔 7420afa380 feat(权限): 实现基于角色的路由权限控制
- 新增路由元信息类型定义 (requiresAuth, roles, title)
- 实现路由守卫中的角色权限校验逻辑
- 新增 403 禁止访问页面
- 提取权限校验函数 checkRoutePermission,提高可测试性
- 修复 JSON.parse 异常处理,增强健壮性
- 优化页面标题动态设置

测试优化:
- 重构 global-setup.ts,支持 JAR 文件启动后端服务
- 优化测试用例等待逻辑,减少硬编码延迟
- 简化 playwright 配置,移除多浏览器支持
- 新增路由权限守卫单元测试

关联需求:权限系统完善
2026-04-08 15:29:03 +08:00
张翔 0c8c993995 test: 删除根目录下的非核心E2E测试文件(任务 2/8) 2026-04-07 21:45:28 +08:00
张翔 d65537529a fix(e2e): 修复前端服务启动冲突问题
问题:
- Playwright的webServer配置会自动启动前端服务
- global-setup.ts也在启动前端服务
- 导致端口3002冲突

修复:
- 移除global-setup.ts中的前端服务启动逻辑
- 移除global-setup.ts中的前端服务停止逻辑
- 移除前端服务健康检查验证
- 让Playwright的webServer统一管理前端服务

优势:
- 避免端口冲突
- 简化测试环境设置
- 统一服务管理
2026-04-07 11:24:50 +08:00
张翔 92df794cc8 feat(e2e): 使用dev配置和PostgreSQL数据库进行测试
问题:
- H2数据库与PostgreSQL存在兼容性差异
- Flyway脚本在H2和PostgreSQL上的执行结果不一致
- 密码哈希验证失败

修复:
- 修改后端服务配置:test -> dev
- 修改网关服务配置:test -> dev
- 使用PostgreSQL数据库(localhost:55432)

优势:
- 更接近生产环境
- 避免H2兼容性问题
- 数据库行为一致
- Flyway脚本执行可靠
2026-04-07 10:36:58 +08:00
张翔 3e6b2ac057 feat(e2e): 增强服务启动稳定性和健康检查
优化内容:

1. 增加服务启动超时时间
   - 后端服务:60秒 -> 90秒
   - 网关服务:60秒 -> 90秒
   - 前端服务:60秒 -> 90秒

2. 改进健康检查逻辑
   - 添加请求超时控制(5秒)
   - 后端服务:增加登录API连通性验证
   - 网关服务:增加登录API连通性验证
   - 确保服务真正可用后才继续

3. 增强服务状态监控
   - 监控所有服务(后端、网关、前端)
   - 每30秒检查一次服务状态
   - 发现异常立即报警

4. 添加综合验证机制
   - 验证所有服务健康状态
   - 验证网关到后端的连通性
   - 确保整个链路可用

预期效果:
- 提高服务启动成功率
- 及早发现服务问题
- 确保测试环境稳定
2026-04-07 10:17:47 +08:00
张翔 8ddd99f54f fix(e2e): 添加网关服务启动,修复架构问题
问题:
- 前端直接访问后端(8084),未通过网关
- 网关服务(8080)未启动
- 导致认证和授权流程失败

修复:
1. 前端配置:
   - 修改 vite.config.ts,代理目标改为网关(8080)
   - 支持环境变量 VITE_API_TARGET

2. 测试环境:
   - 添加网关服务启动逻辑
   - 添加 waitForGatewayReady 健康检查
   - 添加网关服务停止逻辑
   - 修改 cleanupTestData API 地址(8084 -> 8080)

架构:
- 前端(3002)-> 网关(8080)-> 后端(8084)
- 网关负责:JWT认证、RBAC授权、限流、熔断
2026-04-07 09:57:06 +08:00
张翔 aaba9a8e64 fix(e2e): 添加前端服务启动逻辑
问题:
- 测试访问 http://localhost:3002 但前端服务未启动
- 导致所有登录测试失败

修复:
- 在 global-setup 中添加前端服务启动(pnpm run dev)
- 添加 waitForFrontendReady 函数等待前端服务就绪
- 在 global-teardown 中添加前端服务停止逻辑
- 前端服务健康检查:http://localhost:3002
2026-04-07 09:50:09 +08:00
张翔 aedca1cf85 feat: 增强测试稳定性和可靠性
- 增加登录重试机制(最多3次),提高登录成功率
- 添加后端健康监控,每30秒检查一次后端状态
- 改进测试隔离,每个测试后清理localStorage和sessionStorage
- 优化错误处理和日志输出
- 添加globalTeardown函数,确保测试后正确清理资源
2026-04-04 13:29:06 +08:00
张翔 be1c587dbf fix: 修复测试中操作admin用户导致后续测试失败的问题
- 修复密码哈希格式问题(从$2a$改为$2b$)
- 更新所有测试用例密码从Test@123改为admin123
- 修改测试2.3、2.5、2.6,避免操作admin用户(第1行)
- 在beforeEach中添加页面初始化,避免localStorage访问错误
- 添加测试数据清理机制
2026-04-04 13:01:38 +08:00
张翔 f321859f9b feat: 添加测试数据清理机制
- 在global-setup中添加cleanupTestData函数
- 测试前自动清理之前创建的测试数据
- 保留初始数据(用户ID 1-10,角色ID 1-4)
- 解决重复键冲突问题
2026-04-04 11:18:54 +08:00
张翔 f882599072 fix: 改进成功消息等待策略,修复测试失败问题
- 添加waitForSuccessMessage()方法到UserManagementPage和RoleManagementPage
- 改进submitForm()方法,添加等待时间
- 更新测试用例使用新的等待方法
- 增加错误消息检测和日志输出
- 修复权限选择器问题(使用.el-tree替代固定value)
2026-04-04 10:03:19 +08:00
张翔 af44c23f21 refactor(security): 重构安全配置并优化测试环境
- 移除旧的测试套件和UAT测试文件
- 更新密码编码器配置使用BCrypt strength=12
- 添加用户角色关联表和相关服务
- 优化前端日期显示格式
- 清理无用资源和配置文件
- 增强测试数据管理和清理功能
2026-03-27 13:00:22 +08:00