成长人人都是产品经理·东哥说AI··AI 生成
让AI写后端,我多花10分钟测试,省下半天debug
作者分享了使用AI编程工具开发后端时的实践心得:核心策略是测试先行。他拆解了开发流程,关键动作是让AI编写最小测试文件,验证模型接入、流式输出等模块的真实接口和返回字段,再将实测结果追加到开发文档。作者认为,这种“维护文档而非代码”的范式转变,能有效提前发现版本变迁、字段不符等隐蔽问题,将排查范围从整体缩小到模块间,从而大幅减少后续联调和debug时间。原文 ↗原文 ↗
核心观点
- ▍在AI编程中,维护一份越来越准的开发文档(而非代码)是核心范式,通过测试先行获取真实接口字段,能极大减少后端集成与联调时的错误排查范围。
- 01作者将后端开发拆分为三个阶段:先搭前后端脚手架并启动验证,再做前端UI,最后实现模型接入与NL2SQL核心功能。
- 02在接入千问模型前,作者通过MCP连接LangChain官方文档,使用ask模式查询NL2SQL的现成组件(如SQLDatabase和create_sql_agent),但不直接写代码。
- 03作者让AI创建最小测试文件,逐一验证DashScope SDK(Qwen3.7)的基础对话、流式输出、工具调用,并记录真实返回字段。
- 04NL2SQL部分,在实际测试后发现LangChain现成组件编排方式不合需求,最终让AI自研了一套包含意图理解、SQL生成、sqlglot安全校验(禁删表、禁SELECT *、强制加LIMIT)、执行查库、生成图表配置的完整流程,全程SSE流式输出。
- 05作者遇到一个版本变迁的坑:Pydantic升级到v2后,BaseSettings被拆到独立包,需手动补装pydantic-settings依赖。
- 06数据库测试通过API但查询为空,原因是建表后未插入模拟数据,作者让AI补写了初始化脚本(插入100个客户、1000个订单)。
反方 / 局限
- — 作者提到,AI不一定知道版本变迁(如Pydantic v2的拆分),需要开发者自己盯着报错信息定位问题,这是AI编程的天然局限。
概念锚点
前置背景
平行视角
未来推演
延伸追问