ChatPaper.aiChatPaper

TENET: Nutzung von Tests über die Validierung hinaus für die Code-Generierung

TENET: Leveraging Tests Beyond Validation for Code Generation

September 29, 2025
papers.authors: Yiran Hu, Nan Jiang, Shanchao Liang, Yi Wu, Lin Tan
cs.AI

papers.abstract

Test-Driven Development (TDD) ist eine weit verbreitete Praxis in der Softwareentwicklung, bei der Entwickler Tests parallel zur Code-Implementierung erstellen und ausführen, um sicherzustellen, dass das Softwareverhalten kontinuierlich validiert und verfeinert wird. Im Zeitalter des „Vibe Coding“, bei dem Entwickler zunehmend das Schreiben von Code an große Sprachmodelle (LLMs) delegieren, indem sie hochrangige Absichten spezifizieren, wird TDD noch entscheidender, da Testfälle als ausführbare Spezifikationen dienen, die die beabsichtigte Funktionalität explizit definieren und überprüfen, über das hinaus, was natürliche Sprachbeschreibungen und Codekontext vermitteln können. Obwohl Vibe Coding unter TDD vielversprechend ist, gibt es drei Hauptherausforderungen: (1) die Auswahl eines kleinen, aber effektiven Testsuites, um die Generierungsgenauigkeit zu verbessern und die Ausführungslast zu kontrollieren, (2) die effektive Beschaffung von Kontext wie relevantem Code und (3) die systematische Nutzung von Testfeedback für eine effektive Code-Verfeinerung. Um diese Herausforderungen zu bewältigen, stellen wir TENET vor, einen LLM-Agenten zur Generierung von Funktionen in komplexen realen Repositories unter der TDD-Einstellung. TENET verfügt über drei Komponenten: (1) einen neuartigen Test-Harness-Mechanismus, der ein prägnantes Testsuite auswählt, um die Vielfalt der Zielanwendungsszenarien zu maximieren; (2) ein maßgeschneidertes Agenten-Toolset, das eine effiziente Beschaffung von relevantem Code mit interaktivem Debugging durchführt; und (3) einen reflexionsbasierten Verfeinerungs-Workflow, der iterativ Fehler analysiert, Kontext ergänzt und Code-Verfeinerungen anwendet. TENET erreicht 69,08 % und 81,77 % Pass@1 auf den Benchmarks RepoCod und RepoEval und übertrifft damit die besten agentenbasierten Baselines um 9,49 bzw. 2,17 Prozentpunkte. Darüber hinaus ist dies die erste Studie zur testgetriebenen Code-Generierung mit Repository-Level-Kontext, die untersucht, wie verschiedene Aspekte von Testsuites die Leistung von LLM-Agenten unter der TDD-Einstellung beeinflussen.
English
Test-Driven Development (TDD) is a widely adopted software engineering practice that requires developers to create and execute tests alongside code implementation, ensuring that software behavior is continuously validated and refined. In the era of vibe coding, where developers increasingly delegate code writing to large language models (LLMs) by specifying high-level intentions, TDD becomes even more crucial, as test cases serve as executable specifications that explicitly define and verify intended functionality beyond what natural-language descriptions and code context can convey. While vibe coding under TDD is promising, there are three main challenges: (1) selecting a small yet effective test suite to improve the generation accuracy and control the execution workload, (2) retrieving context such as relevant code effectively, and (3) systematically using test feedback for effective code refinement. To address these challenges, we introduce TENET, an LLM agent for generating functions in complex real-world repositories under the TDD setting. TENET features three components: (1) a novel test harness mechanism that selects a concise test suite to maximize diversity of target usage scenarios; (2) a tailored agent toolset that performs efficient retrieval of relevant code with interactive debugging; and (3) a reflection-based refinement workflow that iteratively analyzes failures, replenishes context, and applies code refinement. TENET achieves 69.08% and 81.77% Pass@1 on RepoCod and RepoEval benchmarks, outperforming the best agentic baselines by 9.49 and 2.17 percentage points, respectively. In addition, this is the first study of test-driven code generation with repository-level context, examining how different aspects of test suites affect the performance of LLM agents under the TDD setting.
PDF22September 30, 2025