7.1
深览指数
成长人人都是产品经理·东哥说AI··AI 生成

让AI写后端,我多花10分钟测试,省下半天debug

作者分享了使用AI编程工具开发后端时的实践心得:核心策略是测试先行。他拆解了开发流程,关键动作是让AI编写最小测试文件,验证模型接入、流式输出等模块的真实接口和返回字段,再将实测结果追加到开发文档。作者认为,这种“维护文档而非代码”的范式转变,能有效提前发现版本变迁、字段不符等隐蔽问题,将排查范围从整体缩小到模块间,从而大幅减少后续联调和debug时间。原文 ↗

核心观点
  • 在AI编程中,维护一份越来越准的开发文档(而非代码)是核心范式,通过测试先行获取真实接口字段,能极大减少后端集成与联调时的错误排查范围。
  1. 01作者将后端开发拆分为三个阶段:先搭前后端脚手架并启动验证,再做前端UI,最后实现模型接入与NL2SQL核心功能。
  2. 02在接入千问模型前,作者通过MCP连接LangChain官方文档,使用ask模式查询NL2SQL的现成组件(如SQLDatabase和create_sql_agent),但不直接写代码。
  3. 03作者让AI创建最小测试文件,逐一验证DashScope SDK(Qwen3.7)的基础对话、流式输出、工具调用,并记录真实返回字段。
  4. 04NL2SQL部分,在实际测试后发现LangChain现成组件编排方式不合需求,最终让AI自研了一套包含意图理解、SQL生成、sqlglot安全校验(禁删表、禁SELECT *、强制加LIMIT)、执行查库、生成图表配置的完整流程,全程SSE流式输出。
  5. 05作者遇到一个版本变迁的坑:Pydantic升级到v2后,BaseSettings被拆到独立包,需手动补装pydantic-settings依赖。
  6. 06数据库测试通过API但查询为空,原因是建表后未插入模拟数据,作者让AI补写了初始化脚本(插入100个客户、1000个订单)。
反方 / 局限
  • 作者提到,AI不一定知道版本变迁(如Pydantic v2的拆分),需要开发者自己盯着报错信息定位问题,这是AI编程的天然局限。
5 分钟 · 5 卡片 · 10 资料
读原文 →

概念锚点

前置背景

平行视角

未来推演

延伸追问