zhangxiang
|
eb33755f23
|
feat(encryption): 实现前后端 AES-256-GCM 加密通信
参考同级项目 novavis-authority 实现,在 HTTPS 基础上增加应用层加密。
后端:
- CryptoService: AES-256-GCM + PBKDF2 密钥派生(manage-common)
- CryptoFilter: Gateway GlobalFilter,检测 X-Encrypted 头后加解密请求/响应体
- 配置:app.encryption.secret 通过环境变量注入
前端:
- crypto.ts: Web Crypto API 实现 AES-256-GCM + PBKDF2
- request.ts: 拦截器自动加密请求体、解密响应体
- 环境变量 VITE_ENCRYPTION_SECRET
测试覆盖:
- 后端 CryptoServiceTest 16 个用例 + CryptoFilterTest 7 个用例
- 前端 crypto.test.ts 8 个用例 + Playwright E2E smoke 测试
- 全量 510 个前端测试 + 后端全量测试全部通过,无回归
|
2026-08-02 08:51:21 +08:00 |
|
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
|
86b7555943
|
完善e2e测试与后端测试,微信小程序端UI层测试暂未完成
|
2026-07-23 20:16:31 +08:00 |
|
liwentao
|
b689656faf
|
增加品牌方案管理
|
2026-07-23 18:56:35 +08:00 |
|
liwentao
|
4c07ec5455
|
新增e2e测试脚本,修复部分问题
|
2026-07-22 20:00:13 +08:00 |
|
liwentao
|
4a4697c816
|
新增教练端,实现业务闭环:会员登录注册→查询团课→预约团课→扫码签到→教练端开课→记录实际开课时间→教练端结课→记录实际结课时间→后台查询数据
|
2026-07-20 17:21:28 +08:00 |
|
liwentao
|
df0e68469b
|
新增教练管理,优化预约人数计数方式
|
2026-07-19 19:02:10 +08:00 |
|
liwentao
|
97a5eff678
|
完善业务闭环,实现对轮播图的管理,优化数据库表文件
|
2026-07-18 16:21:40 +08:00 |
|
liwentao
|
2e7c2ced43
|
实现大部分页面前后端互通
|
2026-07-17 15:48:36 +08:00 |
|
liwentao
|
a9ccdab421
|
实现部分页面前后端相通
|
2026-07-16 17:29:27 +08:00 |
|
liwentao
|
cacc8997ec
|
移除流程中的支付相关和会员卡相关
|
2026-07-14 18:49:15 +08:00 |
|
liwentao
|
593f6f13e7
|
新增数据统计页面
|
2026-07-10 13:56:16 +08:00 |
|
liwentao
|
8fb4e714d8
|
新增会员卡管理
|
2026-07-09 15:33:05 +08:00 |
|
liwentao
|
a8e69e0850
|
新增会员管理
|
2026-07-09 14:45:45 +08:00 |
|
liwentao
|
f5b5724e92
|
完善团课相关管理
|
2026-07-08 17:02:04 +08:00 |
|
liwentao
|
efd4d03037
|
修复多处问题
|
2026-06-29 02:56:13 +08:00 |
|
liwentao
|
80759f6793
|
修复一次支付发放两张会员卡的问题
|
2026-06-28 17:56:31 +08:00 |
|
liwentao
|
f8279129be
|
修复编译时错误
|
2026-06-28 16:42:24 +08:00 |
|
future
|
fc48db071e
|
完成一键登录和支付功能
|
2026-06-28 14:47:42 +08:00 |
|
future
|
35e7532f1b
|
解决bom字符
|
2026-06-25 01:22:33 +08:00 |
|
future
|
0d143be7b3
|
与dev重组登录
|
2026-06-25 01:12:42 +08:00 |
|
future
|
2ffd1aa7d6
|
修复项目构建
|
2026-06-24 23:08:53 +08:00 |
|
liwentao
|
581cc995c6
|
修复后端bug,更新测试数据
|
2026-06-24 07:27:44 +08:00 |
|
liwentao
|
2251f31524
|
新增支付宝连接沙箱模拟支付(暂不可用
|
2026-06-24 04:59:32 +08:00 |
|
 futureandfujia
|
4481819eba
|
修复丢失文件
|
2026-06-24 00:46:47 +08:00 |
|
 futureandfujia
|
79eb07599e
|
feat: 添加签到模块和数据库表结构
- 新增gym-checkIn签到模块
- 创建sign_in_record签到记录表(V13迁移脚本)
- 添加签到相关路由配置
- 更新应用配置以支持签到模块
- 添加Redis密钥常量
|
2026-06-24 00:46:47 +08:00 |
|
 futureandfujia
|
a7f31083cf
|
签到模块
|
2026-06-24 00:46:47 +08:00 |
|
 futureandfujia
|
524182c478
|
修复项目构建
|
2026-06-24 00:46:47 +08:00 |
|
future
|
3586a7d74b
|
登录
|
2026-06-23 22:47:35 +08:00 |
|
liwentao
|
8da58a8f51
|
新增功能:团课签到前验证是否到店签到
|
2026-06-18 10:48:23 +08:00 |
|
liwentao
|
0b2146f237
|
新增团课扫码签到功能,文档已更新
|
2026-06-18 10:11:47 +08:00 |
|
liwentao
|
7cc9a68144
|
新增团课推荐功能
|
2026-06-15 16:43:12 +08:00 |
|
liwentao
|
b5c8a087dd
|
新增团课多条件查询
|
2026-06-15 14:09:19 +08:00 |
|
liwentao
|
7a94145819
|
新增团课类型,类型标签,以及相关功能
|
2026-06-11 13:57:46 +08:00 |
|
liwentao
|
7e4035e0ae
|
完成模块4,4.1基础信息统计
|
2026-06-09 23:04:43 +08:00 |
|
liwentao
|
e19324d0ef
|
测试git
|
2026-06-09 18:25:04 +08:00 |
|
 futureandfujia
|
e0e707edcb
|
添加签到表迁移文件
|
2026-06-09 17:29:10 +08:00 |
|
liwentao
|
8ab528a74b
|
修复web-application-type
|
2026-06-09 16:28:36 +08:00 |
|
liwentao
|
de7a359ead
|
将member-config.yml迁移至manage-app模块
删除重复的V6sql语句
|
2026-06-09 11:21:19 +08:00 |
|
future
|
fbb41911a2
|
修复websoket重名问题
|
2026-06-09 10:53:35 +08:00 |
|
future
|
223a427614
|
完成签到模块功能
|
2026-06-09 10:07:30 +08:00 |
|
future
|
78c80c4b1d
|
签到模块
|
2026-06-09 09:43:31 +08:00 |
|
liwentao
|
8af444b7ee
|
完成模块2
|
2026-06-02 17:18:21 +08:00 |
|
liwentao
|
bdcd3b2bf0
|
移除已废弃的RedisConfig和RedisService
|
2026-06-02 17:18:21 +08:00 |
|
liwentao
|
544ddeec5a
|
增加Redis缓存功能
注:/api/groupCourse/cache/get接口为测试接口
|
2026-06-02 17:18:17 +08:00 |
|
liwentao
|
2f070e6b44
|
将团课相关代码迁移至gym-GroupCourse模块
|
2026-06-02 17:17:45 +08:00 |
|
liwentao
|
de01a39848
|
完成团课查找功能
|
2026-06-02 17:17:04 +08:00 |
|
liwentao
|
03991319fd
|
完成模块2-2.1团课预约
|
2026-06-02 17:14:06 +08:00 |
|
liwentao
|
a8c7a4061e
|
增加Redis缓存功能
注:/api/groupCourse/cache/get接口为测试接口
|
2026-06-02 17:13:42 +08:00 |
|