打开网易新闻 查看精彩图片
每个程序员都说过那句经典谎言:"我本地跑得好好的。"Farjia Dristy 毕业后花了三年才想明白,这句话暴露的根本不是环境差异,而是自己写代码时的侥幸心理。
本地开发像开私家车——路况熟悉,音乐对味,连空调温度都是固定的。CI/CD 流水线则是把同一辆车扔进随机路况模拟器:依赖版本差一个小数点、时区设置不同、甚至磁盘读写速度波动,都能让代码当场翻车。Dristy 回忆早期项目时承认,她习惯在代码里藏"隐形假设":默认某个文件夹存在、假设 API 永远返回 200、把临时文件当永久存储用。
「CI/CD 不是帮你部署,是逼你承认这些假设根本站不住脚。」
这种暴露是痛苦的。Dristy 提到一次典型翻车:本地测试通过的支付模块,在流水线里因为毫秒级超时阈值连续失败七次。追查后发现,她为了"跑得快"把重试逻辑写成了死循环——本地数据量小,根本触发不了边界条件。
三年后的她现在把流水线当第一道用户验收测试。不是测试代码对不对,是测试代码够不够"诚实"——有没有把个人习惯伪装成通用逻辑。她见过太多"本地战神"在生产环境栽跟头,根源都是同一句话:我机器上明明好好的。
热门跟贴