paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Test-Oriented Programming: rethinking coding for the GenAI era

面向测试的编程:重新思考 GenAI 时代的编码
ICSE Proceedings of the 2026 IEEE/ACM 48th International Conference on Software Engineering2026匹配度 3/10 · 论文关注 LLM 生成代码与测试驱动的编程范式,和 PL 与 LLM/Agent 的交叉有弱关联;但它不涉及静态分析、形式化验证、浮点或贝叶斯程序分析,也未分析或改进 Agentic 程序。引用 0 inbox
Jorge Melegati
crossref: 2026-09-12dblp: 2026-09-12arxiv: 2026-09-12

AI 速览

一句话:提出面向测试的编程(TOP)范式,开发者只需审查由自然语言规约生成的测试代码,生产代码交由 LLM 生成。

大语言模型(LLM)已展现出强大的代码生成能力,现有工具主要依赖自动补全助手或多智能体编排来辅助开发者编程,开发者仍需深度介入生产代码的编写。本文提出一种更高抽象层次的编程范式——面向测试的编程(Test-Oriented Programming, TOP):开发者只负责检查依据自然语言规约生成的测试代码,而生产代码则可委托给 LLM。为评估该设想的可行性,作者实现了一个概念验证工具,并用两个不同的 LLM 生成一个小型命令行程序。实验取得了初步的积极结果,同时也识别出将该范式应用于真实项目时所面临的若干挑战。

问题
现有 LLM 编程工具(补全助手、多智能体)仍需开发者直接关注生产代码的编写与正确性,抽象层次较低。
方法
提出 Test-Oriented Programming 范式:由自然语言规约生成测试代码供开发者审查,再由 LLM 依据测试生成生产代码;并实现概念验证工具进行验证。
评估
使用概念验证工具、以两个不同的 LLM 生成一个小型命令行程序,结果表明该方案可行,同时总结出真实项目应用的挑战。
原文摘要(Abstract)

Large language models (LLMs) have shown astonishing capability of generating software code, leading to its use to support developers in programming. Proposed tools have relied either on assistants for improved auto-complete or multi-agents, in which different model instances are orchestrated to perform parts of a problem to reach a complete solution. We argue that LLMs can enable a higher-level of abstraction, a new paradigm we called Test-Oriented Programming (TOP). Within this paradigm, developers only have to check test code generated based on natural language specifications, rather than focusing on production code, which could be delegated to the LLMs. To evaluate the feasibility of this proposal, we developed a proof-of-concept tool and used it to generate a small command-line program employing two different LLMs. We obtained promising results and identified challenges for the use of this paradigm for real projects.

链接与引用

DOI 原文 · arXiv · PDF(开放获取) · DBLP

BibTeX
@inproceedings{abs-2604-08102,
  title = {Test-Oriented Programming: rethinking coding for the GenAI era},
  author = {Jorge Melegati},
  booktitle = {ICSE},
  year = {2026},
  doi = {10.1145/3774748.3795666}
}