El desarrollo basado en pruebas (TDD) es una práctica ágil de escribir código de prueba antes del código de producción, siguiendo tres etapas: roja, verde y refactorización. En la etapa roja, se escribe el código de prueba; en la etapa verde se implementa el código mínimo necesario para pasar la prueba y en la etapa de refactorización se realizan mejoras al código. Esta práctica está muy extendida en toda la industria y se han realizado varios estudios para comprender sus beneficios e impactos en el proceso de desarrollo de software.
A pesar de su popularidad, los estudios de TDD a menudo se centran en los aspectos técnicos de la práctica, como la calidad externa/interna del código, la productividad, los olores de las pruebas y la comprensión del código, en lugar del contexto en el que se practica. En este artículo, presentamos una revisión sistemática de la literatura utilizando Scopus, Web of Science y Google Scholar que se centra en la práctica de TDD y las influencias que conducen a la introducción de olores/antipatrones de prueba en el código de prueba.
La literatura sugiere que la estructura organizacional influye en la estrategia de prueba. Además, existe una tendencia a utilizar olores de prueba y antipatrones TDD indistintamente, y los olores de prueba afectan negativamente la comprensión del código. Además, los estilos de TDD y la relación entre la práctica de TDD y la generación de olores de prueba con frecuencia se pasan por alto en la literatura.