← 返回项目列表

银行受害者补偿功能

2024.11 — 2025.02 JHC Japan
Java Apache Struts Oracle DB FinTech

背景

在日本遗留银行系统上独立完成全栈功能开发。5 人团队各自负责独立模块。我负责从前端到后端的完整功能——技术栈是 Apache Struts + Oracle DB,我之前完全没有接触过。

测试方法论

这个项目真正的贡献不在代码,而在测试框架。金融系统中混淆业务错误和系统错误可能导致真实损失。我形式化了二者的区分:

业务错误

  • 金额超出限额
  • 收款方信息不完整
  • 状态不允许操作

处理: 拦截,向用户返回明确提示。

系统错误

  • 数据库连接失败
  • 写入超时
  • 事务回滚失败

处理: 记录日志、回滚事务、通知管理员。

测试用例与设计文档一一映射

每个测试用例对应设计文档中的一条规格。覆盖正常路径、业务错误路径和系统错误路径。将映射关系与客户确认后才开始测试,确保对「正确行为」的定义没有歧义。

遗留系统开发

此前从未接触 Apache Struts。通过阅读既有代码学习,严格遵循命名、实现和注释规范,使新代码和原有系统风格一致。这种能力贯穿了我后续的每一个项目:先吸收规范,再像一直就在这里一样贡献。