Files
ccdi/docs/test-records/model-param-backend-alignment-test.md

3.8 KiB
Raw Blame History

模型默认参数后端对齐验证记录

验证时间

  • 2026-03-16

静态脚本比对

  • 对比文件:
    • sql/ccdi_model_param.sql
    • sql/2026-03-16-update-ccdi-model-param-defaults.sql
  • 校验结果:
    • 系统默认模型数5
    • 系统默认参数数16
    • model_code + param_code 唯一组合数16
    • param_value 均为原始字符串,不含千分位逗号

后端代码验证

  • 单测命令:

    • mvn -pl ccdi-project -Dtest=CcdiModelParamServiceImplTest test
  • 结果:

    • BUILD SUCCESS
    • 覆盖 default 项目读取系统默认参数
    • 覆盖默认项目首次保存时复制整套系统默认参数并切换为 custom
  • 编译命令:

    • mvn -pl ccdi-project -am -DskipTests compile
  • 结果:

    • BUILD SUCCESS

联调环境检查

  • 使用配置:
    • ruoyi-admin/src/main/resources/application-local.yml
  • 数据库检查命令:
    • SELECT COUNT(*) AS total_rows, COUNT(DISTINCT model_code) AS model_count FROM ccdi_model_param WHERE project_id = 0;
  • 检查结果:
    • 初始状态下,project_id = 0 默认参数记录数为 0
    • 已执行 sql/2026-03-16-update-ccdi-model-param-defaults.sql
    • 升级后,project_id = 0 默认参数记录数为 16
    • 升级后默认模型数为 5

接口回归结论

  • 已完成:
    • 代码层行为通过单测验证
    • SQL 初始化脚本与升级脚本产物一致
    • GET /ccdi/modelParam/listAll?projectId=0
    • GET /ccdi/modelParam/listAll?projectId=<default项目ID>
    • POST /ccdi/modelParam/saveAll

接口回归结果

  • 启动方式:

    • 由于 spring-boot:run 在本地会读到不可达数据源,最终使用 ruoyi-admin/target/ruoyi-admin.jar
    • 显式传入数据库、Redis、ruoyi.profile 参数启动
    • 测试结束后已关闭后端进程
  • 登录接口:

    • POST /login/test
    • 结果:成功获取 token
  • 查询系统默认参数:

    • GET /ccdi/modelParam/listAll?projectId=0
    • 结果:返回 5 个模型、16 条参数
    • 模型编码:ABNORMAL_BEHAVIORLARGE_TRANSACTIONSUSPICIOUS_FOREIGN_EXCHANGESUSPICIOUS_GAMBLINGSUSPICIOUS_PART_TIME
  • 查询默认项目参数:

    • 使用临时默认项目 project_id = 39
    • GET /ccdi/modelParam/listAll?projectId=39
    • 结果:返回 5 个模型、16 条参数,与系统默认参数一致
  • 验证默认项目首次保存:

    • POST /ccdi/modelParam/saveAll
    • 请求:仅更新 LARGE_TRANSACTION/SINGLE_TRANSACTION_AMOUNT = 2222
    • 结果:
      • 接口返回 保存成功
      • ccdi_project.config_typedefault 变为 custom
      • ccdi_model_param 为该项目复制了 16 条参数
      • 唯一参数组合数为 16
      • LARGE_TRANSACTION/SINGLE_TRANSACTION_AMOUNT 已更新为 2222
  • 清理:

    • 已删除临时测试项目 project_id = 39 及其参数数据

环境清理

  • 已删除临时创建的测试项目数据,不保留额外脏数据
  • 已关闭测试时启动的后端进程

2026-03-16 前端联调补充复核

  • 本次前端联调复用了本地已运行的开发服务:
    • 前端:http://localhost
    • 后端:http://localhost:62318
  • 实际联调页面:
    • /modelParam
    • /ccdiProject/detail/36?tab=config
    • /ccdiProject/detail/32?tab=config
  • 联调观察与接口一致:
    • 全局页展示 5 个模型、16 个参数
    • 默认项目 projectId=36 读取系统默认参数全集
    • 历史 custom 项目 projectId=32 返回空模型集合,页面保持空状态,不补齐默认模型
  • 联调过程中为验证保存链路曾触发真实保存,验证结束后已恢复现场:
    • projectId=0 / LARGE_TRANSACTION / SINGLE_TRANSACTION_AMOUNT 已恢复为 1111
    • projectId=36 已恢复为 configType=default
    • projectId=36 的项目级参数副本已删除