Vibe Coding 特征测试:重构前先锁定遗留行为
遗留代码没有规格时,AI 很容易把“不好看”误判为“应当修正”。本文用基线样本、可观察边界和差异审批建立特征测试,让重构先证明行为未被偷偷改写。
这里聚合 CodeNodeX AI 社区中与 AI Agent 相关的技术文章和讨论,覆盖概念解释、工具对比、工程实践、常见问题和独立开发经验。
如果你正在研究 AI Agent,建议先阅读高质量长文,再参与帖子讨论,形成从理解到实践的完整路径。
遗留代码没有规格时,AI 很容易把“不好看”误判为“应当修正”。本文用基线样本、可观察边界和差异审批建立特征测试,让重构先证明行为未被偷偷改写。
AI 能快速补齐测试文件,也能复制实现、制造脆弱 mock 和用宽断言换绿色。本文给出从需求映射、失败证明到变异校准的审查顺序,确保新增测试真的会拦住错误。
按 components、services、utils 横向堆文件会让一次功能修改横跨全仓。本文用垂直切片、公开端口、依赖规则和契约测试约束 AI 生成代码的模块边界。
Spike 的任务是低成本回答未知问题,产品地基则要长期承受变更。本文给出实验边界、隔离方法、晋升门和删除证明,避免把一次演示直接长成生产系统。
原型完成不等于生产就绪。本文用资产盘点、安全、数据、可靠性、可观测性和回滚证据建立退出门,决定原型应归档、重写还是分阶段产品化。
AI 进入陌生仓库后立即搜索业务关键词,容易错过仓库规则、生成边界和现有未提交工作。本文给出一套只读冷启动顺序,从根目录、Git 状态、清单脚本到最小验证基线,先证明“能安全动哪里”。
找到路由处理器并不等于读懂一次请求。本文结合静态调用证据和运行时 Trace,逐层核对代理、中间件、鉴权、校验、事务、事件与响应,给 AI 一条可验证而非想象出来的执行路径。
测试名称像需求说明,但真正行为藏在 setup、fixture、helper 和断言里。本文教 AI 把测试作为可执行证据阅读,同时核对实现、配置和调用方,避免把陈旧测试或实现细节误认成产品契约。
工作树不干净时,AI 的一次格式化、还原或批量替换都可能覆盖用户工作。本文用三层状态盘点、文件归属、允许范围、前后差异收据和冲突停机规则,让新改动与既有改动共存。
在本地能读到环境变量,不代表构建、测试和生产使用同一来源。本文建立配置矩阵,逐项标出定义、注入、读取、默认值、优先级、敏感性与生效阶段,防止 AI 用硬编码修复环境差异。
只给 AI 一句需求,会迫使它自行猜测仓库状态和验收口径。本文定义一份轻量任务上下文包,把目标、非目标、代码基线、允许范围、验证命令与未知项组合成可复查的开工输入。
给 AI 一个“照着写”的文件,常会连同偶然实现和旧缺陷一起复制。本文说明如何成对准备正例、反例、判定理由与适用边界,让示例成为需求证据而不是隐含模板。