3.5 KiB
Raw Blame History

Backend Validation: sw-business-bank 银行代扣文件传输配置能力

固定基线

  • 分支:develop
  • 提交:b540f1f48bf2d6c28aa183749ca61231071c0942
  • 验证日期2026-03-24

验证命令

mvn -f /Volumes/Dpan/github/water-workspace/water-backend/sw-business-bank/pom.xml -pl sw-business-bank-server -am -DskipTests compile
mvn -f /Volumes/Dpan/github/water-workspace/water-backend/sw-business-bank/pom.xml -pl sw-business-bank-server -am -Dtest=BankTransferPathResolverTest,BankWithholdingTransferConfigTest -Dsurefire.failIfNoSpecifiedTests=false test

结果摘要

  • 编译:通过
  • 定向测试:通过
  • 测试统计2 个测试类9 个测试用例全部通过
  • Docker 文件通道 smoke通过

场景证据

默认规则

  • BankTransferPathResolverTest.resolve_usesDefaultRuleWhenNoOverrideMatches
  • 结论:未命中覆盖时,按默认 SFTP 与默认目录生成 resolvedDir/resolvedPath

租户覆盖

  • BankTransferPathResolverTest.resolve_prefersTenantChannelThenTenantThenChannel
  • 结论:存在租户与租户-通道覆盖时,租户相关覆盖能命中并参与最终结果

通道覆盖

  • BankTransferPathResolverTest.resolve_prefersTenantChannelThenTenantThenChannel
  • 结论:通道覆盖在默认规则之上生效,并在存在更具体作用域时被更高优先级覆盖

租户-通道覆盖

  • BankTransferPathResolverTest.resolve_prefersTenantChannelThenTenantThenChannel
  • 结论:TENANT_CHANNEL 优先级最高,可同时覆盖协议与目录

字段级回退

  • BankTransferPathResolverTest.resolve_fallsBackFieldByFieldWhenHigherScopeIsPartial
  • 结论:高优先级仅覆盖协议时,目录继续回退到下一级有效规则,不生成空路径

协议切换

  • BankTransferPathResolverTest.resolve_switchesProtocolWithoutChangingCallerLogic
  • 结论:同一路径解析入口可在 SFTP/FTP 间切换,无需调用方自行拼路径

ARCHIVE / LOCAL_TEMP

  • BankTransferPathResolverTest.resolve_supportsArchiveAndLocalTempStages
  • 结论:归档目录与本地临时目录均纳入统一解析范围

非法模板变量失败

  • BankTransferPathResolverTest.resolve_rejectsUnknownTemplateVariable
  • 结论:命中未声明变量时立即抛出配置错误

配置缺失失败

  • BankTransferPathResolverTest.resolve_rejectsMissingConfig
  • 结论:协议连接信息不完整时立即阻断当前文件动作

已落库批次配置切换回归

  • BankWithholdingTransferConfigTest.resolveStoredOrCurrentBackLocation_reusesPersistedBatchConfigAfterConfigSwitch

  • 结论:已固化 backProtocol/backDir 的批次继续沿用原目录,不漂移到新配置

  • BankWithholdingTransferConfigTest.resolveStoredOrCurrentBackLocation_usesCurrentResolverWhenBatchHasNoSnapshot

  • 结论:未固化回盘目录的旧对象仍可回退到当前统一解析器

备注

  • 已执行基于 Docker 容器的本地文件通道 smoke
    • BankTransferSftpSmokeCli -> bank-transfer-test-sftp (127.0.0.1:2222) 上传/下载/哈希比对通过
    • BankTransferFtpSmokeCli -> bank-transfer-test-ftp (127.0.0.1:2121) 上传/下载/哈希比对通过
    • 当前样本 SHA2562520ee11a48cb01c9372c91a012549a50a39de40441a4295309993727239653b
  • 本轮仍未执行真实银行 SFTP/FTP 网络连通性验证;相关联调继续作为 deferred 保留。
  • H2 测试夹具本轮未新增数据库级用例,application-unit-test.yamlsql/create_tables.sql 无需为当前两组定向测试额外扩展。