ChatPaper.aiChatPaper

DiffTester: Aceleración de la Generación de Pruebas Unitarias para Modelos de Difusión LLM mediante Patrones Repetitivos

DiffTester: Accelerating Unit Test Generation for Diffusion LLMs via Repetitive Pattern

September 29, 2025
Autores: Lekang Yang, Yuetong Liu, Yitong Zhang, Jia Li
cs.AI

Resumen

El desarrollo de software depende en gran medida de pruebas unitarias extensas, lo que hace que la eficiencia de la Generación Automatizada de Pruebas Unitarias (UTG, por sus siglas en inglés) sea particularmente importante. Sin embargo, la mayoría de los modelos de lenguaje grandes (LLMs) existentes generan casos de prueba un token a la vez en cada pasada hacia adelante, lo que resulta en una UTG ineficiente. Recientemente, han surgido los modelos de lenguaje grandes basados en difusión (dLLMs), que ofrecen capacidades prometedoras de generación en paralelo y muestran un fuerte potencial para una UTG eficiente. A pesar de esta ventaja, su aplicación a la UTG sigue estando limitada por una clara compensación entre eficiencia y calidad de las pruebas, ya que aumentar el número de tokens generados en cada paso suele provocar una disminución drástica en la calidad de los casos de prueba. Para superar esta limitación, presentamos DiffTester, un marco de aceleración específicamente diseñado para dLLMs en UTG. La idea clave de DiffTester es que las pruebas unitarias dirigidas al mismo método focal suelen compartir patrones estructurales repetitivos. Al identificar dinámicamente estos patrones comunes mediante el análisis de árboles de sintaxis abstracta durante la generación, DiffTester aumenta de manera adaptativa el número de tokens producidos en cada paso sin comprometer la calidad de la salida. Para permitir una evaluación exhaustiva, ampliamos el benchmark original TestEval, que estaba limitado a Python, mediante la introducción de lenguajes de programación adicionales, incluidos Java y C++. Experimentos extensos en tres benchmarks con dos modelos representativos muestran que DiffTester ofrece una aceleración significativa mientras preserva la cobertura de pruebas. Además, DiffTester se generaliza bien en diferentes dLLMs y lenguajes de programación, proporcionando una solución práctica y escalable para una UTG eficiente en el desarrollo de software. El código y los datos están disponibles públicamente en https://github.com/wellbeingyang/DLM4UTG-open.
English
Software development relies heavily on extensive unit testing, which makes the efficiency of automated Unit Test Generation (UTG) particularly important. However, most existing LLMs generate test cases one token at a time in each forward pass, which leads to inefficient UTG. Recently, diffusion LLMs (dLLMs) have emerged, offering promising parallel generation capabilities and showing strong potential for efficient UTG. Despite this advantage, their application to UTG is still constrained by a clear trade-off between efficiency and test quality, since increasing the number of tokens generated in each step often causes a sharp decline in the quality of test cases. To overcome this limitation, we present DiffTester, an acceleration framework specifically tailored for dLLMs in UTG. The key idea of DiffTester is that unit tests targeting the same focal method often share repetitive structural patterns. By dynamically identifying these common patterns through abstract syntax tree analysis during generation, DiffTester adaptively increases the number of tokens produced at each step without compromising the quality of the output. To enable comprehensive evaluation, we extend the original TestEval benchmark, which was limited to Python, by introducing additional programming languages including Java and C++. Extensive experiments on three benchmarks with two representative models show that DiffTester delivers significant acceleration while preserving test coverage. Moreover, DiffTester generalizes well across different dLLMs and programming languages, providing a practical and scalable solution for efficient UTG in software development. Code and data are publicly available at https://github.com/wellbeingyang/DLM4UTG-open .
PDF12October 6, 2025