将遗留的 COBOL 程序迁移至 Java 等现代语言是金融等关键行业面临的老大难问题,其中最大的挑战在于确保迁移后功能的正确性,尤其是在缺乏原始测试数据和难以验证边界条件的情况下。一篇发表于 arXiv 的最新论文提出了一种名为“Locksmith Loop”的 Agentic 测试合成方法。该方法首先构建两个运行时环境,分别运行源码 COBOL 和生成的 Java 目标码,随后利用 AI Agent 进行迭代循环测试。AI 自动合成测试输入以穿透程序分支,当遇到路径受阻时,分析器会识别出“锁定段落”。在涵盖开源及内部生产级代码的案例研究中,该方法显著提升了测试覆盖率,在开源项目中实现了近乎完整的覆盖,在内部生产级程序中也达到了 91.90% 的分支覆盖率。通过这种“确定性预言机”机制,系统确保了生成的 Java 代码在所有接受测试的用例中,与原始 COBOL 代码的行为保持严格的一致性,甚至包括原有的 Bug。这一成果展示了利用 AI Agent 进行自动化代码迁移与确定性验证的巨大潜力。
事件分析
💡 核心观点:AI Agent 将代码迁移从黑盒转换变为可验证的白盒工程,通过保留 Bug 来验证逻辑一致性,为解决遗留系统现代化难题确立了新范式。
原文链接:Hacker News

评论前必须登录!
立即登录 注册