Best AI Utility logo
Best AI Utility
返回指南
编码
高级
7 分钟阅读
已更新 2026-10-25

用光标重构遗留代码(测试第一,勇气第二)

没有测试的 600 行模块符合 Cursor。在不中断生产的情况下重构它的工作流程更多地是关于测序,而不是人工智能。

该模块有 600 行,已有 10 年历史,可以承载,并且仅通过生产流量进行测试。 Cursor 很好地重构了它,但人工智能可能只是故事的三分之一。另外三分之二是排序:测试、边界和拒绝让代理快速移动。

第一步是特征测试,Cursor 确实擅长帮助编写它们。我要求它读取模块并列出每个可观察到的行为:输入、输出、边缘情况、错误路径。然后生成断言当前行为的测试,包括奇怪的东西,明确标记为“特征:断言当前行为,而不是正确性”。这些测试是使一切成为可能的安全网。

第二步是手术前的界限。我让 Cursor 首先在接缝处提取纯函数(解析、计算、格式化),而不改变任何行为,每次提取都验证为绿色。只有到那时,真正的重构才开始,逐个函数地进行,并遵循最重要的指令:“每次更改一件事,运行测试,停止。”大胆重构的代理自信地重写并巧妙地打破。相互之间进行验证的小传递是您保持控制的方式。

没人认为这一步骤很重要:在应用之前,我让 Cursor 用一句话解释每一项更改。这些解释发现了测试没有发现的两件事:仅在并发情况下发生的共享对象的突变,以及在测试时区而不是生产时区安全的操作重新排序。读一句话的理由是每次变化十秒,抓住了篮网错过的东西。

最终统计:该模块现在有 300 行,其结构可供新员工阅读,行为由特征套件验证相同,并且生产事故为零。人工智能负责打字。纪律进行了重构。两者都是必要的;其中只有一项是可选的。

Put one of these tools on the leaderboard

Every rank on Best AI Utility is paid and time-stamped — outbid the current holder with one crypto payment and the rank is yours until someone outbids you.

更多指南

探索更多