Daily Arxiv

Esta página recopila y organiza artículos sobre inteligencia artificial publicados en todo el mundo.
La información aquí presentada se resume utilizando Google Gemini y el sitio se gestiona sin fines de lucro.
Los derechos de autor de los artículos pertenecen a sus autores y a las instituciones correspondientes; al compartir el contenido, basta con citar la fuente.

Generación de pruebas LLM mediante análisis iterativo de programas híbridos

Created by
  • Haebom

Autor

Sijia Gu, Noor Nashid, Ali Mesbah

Describir

Este artículo presenta la técnica Panta para abordar los desafíos de automatizar la generación de pruebas unitarias para métodos complejos en proyectos reales. Panta supera la limitada capacidad de inferencia de la estructura de flujo de control de LLM al imitar el proceso iterativo de los desarrolladores al analizar el código y construir casos de prueba. Al integrar el análisis de flujo de control estático y el análisis de cobertura de código dinámico, LLM guía sistemáticamente la generación de mejores casos de prueba mediante la identificación de rutas de ejecución no descubiertas. Un mecanismo iterativo basado en la retroalimentación mejora continuamente la generación de pruebas basándose en la información obtenida de la cobertura de rutas estáticas y dinámicas, lo que garantiza pruebas más completas y efectivas. Evaluaciones experimentales en clases con alta complejidad ciclomática de proyectos de código abierto muestran que Panta logra una cobertura de línea un 26 % mejor y una cobertura de rama un 23 % mejor que las técnicas más avanzadas.

Takeaways, Limitations

Takeaways:
Presentamos Panta, una nueva técnica para mejorar la eficiencia de la generación automática de pruebas unitarias utilizando LLM.
Abordar el problema de baja cobertura de ramas de la generación de pruebas tradicional basada en LLM (Limitations) mediante la integración de análisis estático y dinámico.
Validación de la superioridad de Panta a través de resultados experimentales dirigidos a proyectos reales de código abierto.
Mejore la precisión y la cobertura de la generación de pruebas a través de un mecanismo de retroalimentación iterativo.
Limitations:
El rendimiento de Panta se limita a los resultados de evaluación de una clase específica de proyectos de código abierto. Se requiere más investigación para determinar su generalización a una gama más amplia de proyectos y estilos de código.
Centrándose en clases con alta complejidad ciclomática, su efectividad en clases con baja complejidad no está clara.
Puede depender del rendimiento de LLM, y su rendimiento puede cambiar a medida que LLM se desarrolla.
Se necesita más investigación sobre la aplicabilidad y escalabilidad en entornos industriales reales.
👍