← 最新论文
💻 computer science

Test-Oriented Programming: rethinking coding for the GenAI era

该论文提出了一种名为“测试导向编程”(TOP)的新范式,主张在生成式人工智能时代,开发者只需基于自然语言规范审查由大语言模型生成的测试代码,而将生产代码的编写完全委托给模型,并通过概念验证工具初步验证了该方法的可行性与挑战。

原作者: Jorge Melegati

发布于 2026-04-10
📖 1 分钟阅读☕ 轻松阅读

原作者: Jorge Melegati

原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

这篇文章提出了一种在人工智能(AI)时代全新的编程思维方式,作者把它称为**“面向测试的编程”(Test-Oriented Programming, TOP)**。

为了让你更容易理解,我们可以把传统的编程和这种新方式做一个生动的对比:

🏗️ 传统编程:像“监工”一样盯着砖块

以前,程序员就像是一个建筑监工

  • 任务:你需要告诉 AI 助手(比如 GitHub Copilot):“在这里砌一块红砖,那里装一扇窗户。”
  • 工作:AI 帮你砌砖,但你必须亲自检查每一块砖砌得直不直、水泥干不干。
  • 问题:虽然 AI 砌砖速度快了,但你还是得盯着具体的“砖块”(代码细节),这并没有让你从繁琐的体力劳动中彻底解放出来。

🎯 新范式(TOP):像“导演”一样只给剧本

作者提出的“面向测试的编程”,则是让你从“监工”变成**“导演”**。

  • 核心思想:你不再关心“砖块”怎么砌,你只关心**“房子盖好后应该是什么样”**。
  • 怎么做
    1. 你写一份**“验收剧本”(这就是测试代码**)。比如:“如果我在门口按门铃,灯应该亮;如果我想存一本书,系统应该能记住书名。”
    2. 你把这份剧本交给 AI。
    3. AI 根据剧本,自动去砌砖、装窗户、铺地板(生成生产代码)。
    4. 你的工作:你只需要检查 AI 写的“剧本”(测试代码)对不对。如果灯没亮,你就改剧本,而不是去改砖头。AI 会根据你修改后的剧本,自动重新砌砖,直到灯真的亮了为止。

🛠️ 作者做了什么实验?

作者开发了一个叫 "Onion"(洋葱) 的小工具来验证这个想法:

  1. 设定目标:让 AI 做一个能管理“参考文献”(BibTeX)的小工具。
  2. 过程:作者只写了“剧本”(测试要求),比如“能添加条目”、“能搜索文字”。
  3. 结果
    • AI 自动生成了所有需要的代码。
    • 作者完全不需要去修改那些生成的代码(砖块)。
    • 如果 AI 做的不对(比如灯没亮),作者就修改“剧本”(测试代码),AI 就会自动修正。

⚠️ 遇到的挑战(现实中的小麻烦)

虽然这个想法很酷,但作者也发现了一些问题,就像新导演刚上岗时会遇到的困难:

  1. 剧本太长了:AI 生成的“剧本”(测试代码)有时候非常长且复杂。人类导演(程序员)要检查这么长的剧本,眼睛都要花了。
    • 比喻:就像导演要检查几千页的台词本,而不是只看几个关键场景。
  2. AI 的“性格”不稳定:同一个任务,AI 每次生成的代码都不一样。
    • 比喻:就像同一个演员,今天演得深情款款,明天演得像个机器人。这让人很难预测结果。
  3. 不同 AI 风格差异大:有的 AI 说话简洁(像 GPT-4o-mini),有的 AI 喜欢啰嗦,写很多注释(像 Gemini 2.5-Flash)。
    • 比喻:有的编剧写剧本言简意赅,有的编剧喜欢在每个动作旁边都写一大段心理描写,这让导演很难统一标准。

💡 总结

这篇文章的核心观点是:在 AI 时代,我们不需要再花时间去写具体的代码(砌砖),而应该把精力花在定义“什么是正确的”(写剧本/测试)上。

只要你能清晰地描述出“系统应该做什么”以及“怎么验证它做对了”,AI 就能自动帮你把剩下的活儿干完。这是一种将编程抽象化、高级化的尝试,让程序员从“写代码的人”变成“定义规则的人”。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →