Commit Graph
20 Commits
Author SHA1 Message Date
zhangxiang 015cb0dc78 完成自动化测试套件实施(W1-W11)
W1-W3: 基线修复与测试基础设施搭建
- 修复 Jenkins JDK 21 兼容性,统一 E2E 目录,修复 storageState 冲突
- 搭建后端测试基类 BaseContractTest + Testcontainers PostgreSQL
- 创建 TestDataFactory 链式构造,完善 Vitest 基座与 Playwright fixtures
- 建立 docker-compose.test.yml 与测试数据隔离方案

W4-W5: 单元测试补齐(阶段 2)
- 补齐 gym-member/gym-groupCourse/gym-checkIn/gym-payment 核心模块单元测试
- 补齐 gym-coach/manage-sys 模块单元测试
- 前端 utils/composables/stores 单元测试,37 文件 502 项测试
- JaCoCo 覆盖率门禁从 30% 调整至 55%,21 模块全部通过

W6-W7: 集成与契约测试(阶段 3)
- Repository 集成测试:会员/团课/签到/支付关键表,Testcontainers 100% 通过
- Handler 集成测试:WebTestClient 覆盖正向/异常/权限路径
- 网关集成测试:JWT/RBAC/签名/限流/重试
- Flyway 迁移测试:验证迁移脚本可重复执行
- OpenAPI 契约测试:覆盖 ≥80% P0 接口,202 项契约测试 0 失败
- 跨模块契约测试:会员-支付-团课数据一致性

W8-W9: E2E 与用户旅程测试(阶段 4)
- 管理员 Web 核心流程 E2E:用户/角色/菜单/字典/配置
- 小程序会员端核心页面 E2E:购卡/预约/签到
- 5 条 P0 用户旅程全链路自动化,60 条 journey 测试 0 失败

W10: 变异测试与质量门禁(阶段 5)
- 后端 PIT 配置:pitest-maven 1.19.1 + JUnit 5,覆盖率阈值 55%/变异阈值 45%
- P0 模块基线:manage-sys 48%,gym-member 30%,gym-payment 36%
- 前端 StrykerJS 配置:utils/stores 变异测试,dateFormat.ts 70.83%
- Jenkins 质量门禁:JaCoCo/PIT/E2E 统一检查,不达标阻断构建

W11: 持续运行与改进(阶段 6)
- 测试指标收集脚本 scripts/collect-test-metrics.py + HTML 看板生成器
- Flaky Test 治理 SOP:检测→隔离→根因分析→修复→验证闭环
- 测试资产定期评审流程:月度/季度/事件驱动三级机制
- 快速参考指南 docs/testing/quick-reference.md
- 累计 10 份测试文档,7 个里程碑全部达成
2026-08-02 08:28:37 +08:00
liwentao c2f11727fe 新增到课签到时间窗口与迟到签到时间窗口配置,优化教练评分机制(未测试) 2026-07-26 16:10:23 +08:00
liwentao b689656faf 增加品牌方案管理 2026-07-23 18:56:35 +08:00
liwentao 4a4697c816 新增教练端,实现业务闭环:会员登录注册→查询团课→预约团课→扫码签到→教练端开课→记录实际开课时间→教练端结课→记录实际结课时间→后台查询数据 2026-07-20 17:21:28 +08:00
liwentao 593f6f13e7 新增数据统计页面 2026-07-10 13:56:16 +08:00
future fc48db071e 完成一键登录和支付功能 2026-06-28 14:47:42 +08:00
liwentao 2251f31524 新增支付宝连接沙箱模拟支付(暂不可用 2026-06-24 04:59:32 +08:00
futureandfujia 524182c478 修复项目构建 2026-06-24 00:46:47 +08:00
future 3586a7d74b 登录 2026-06-23 22:47:35 +08:00
liwentao 7e4035e0ae 完成模块4,4.1基础信息统计 2026-06-09 23:04:43 +08:00
future 78c80c4b1d 签到模块 2026-06-09 09:43:31 +08:00
liwentao 03991319fd 完成模块2-2.1团课预约 2026-06-02 17:14:06 +08:00
liwentao a7f699a8b4 完成团课查找功能
# Conflicts:
#	gym-manage-api/manage-app/src/main/java/cn/novalon/gym/manage/app/config/SystemRouter.java
#	gym-manage-api/manage-app/src/main/resources/application-dev.yml
#	gym-manage-api/manage-app/src/main/resources/application.yml

# Conflicts:
#	gym-manage-api/pom.xml
2026-06-02 17:13:35 +08:00
liwentao 2df598c0d8 将redis相关配置文件移动至common模块
修复app模块下配置文件中默认用户名与密码
2026-05-31 14:49:24 +08:00
时舟年 53624fc259 membercard与member-reguster合并,能进行编译和启动 2026-05-27 16:06:19 +08:00
future ddb77db605 更新会员模块和系统安全配置 2026-05-27 03:21:38 +08:00
future 85ed6f9196 实现会员信息管理模块 2026-05-26 23:50:50 +08:00
时舟年 0afd1cc865 新增会员卡模块基础 2026-05-21 14:51:29 +08:00
张翔 a64857fe2e fix(build): 修复 mvn clean install 构建失败问题
主要修复:
- AuditLogService: 移除与 Reactor 不兼容的 @Async 注解
- AuditLogServiceTest: 配置 mock Executor 立即执行任务
- AuditLog/AuditLogTest: 添加 toString() 方法并修正断言
- FlywayMigrationScriptTest: 修复版本号排序逻辑
- ManualTableCreationTest: 指定配置类并修复 PostgreSQL 语法
- AutoConfiguration.imports: 修正包名 cn.novalon.manage -> cn.novalon.gym.manage
- pom.xml: 调整 JaCoCo 覆盖率检查策略
2026-04-17 20:18:36 +08:00
张翔 deb961c427 refactor(backend): 重命名后端项目为 gym-manage-api,修改包名为 cn.novalon.gym.manage 2026-04-17 18:35:50 +08:00