Treffer: Test Co‐Evolution in Software Projects: A Large‐Scale Empirical Study.
Weitere Informationen
The asynchronous evolution of tests and code can compromise software quality and project longevity. To investigate the impact of test and production code co‐evolution, this study analyzes a large‐scale dataset of 526 GitHub repositories written in six programming languages: JavaScript, TypeScript, Java, Python, PHP, and C#. We focus on understanding how tests evolve throughout the software lifecycle and the frequency with which production and test code evolve in sync. By applying clustering algorithms and Pearson's correlation coefficient, we identify different patterns of test co‐evolution between projects. We found a significant correlation between high test co‐evolution and smaller development teams but no significant relationship with the frequency of different maintenance activities (corrective, adaptive, perfective, or multi). Despite this, we identified five distinct test evolution patterns, highlighting diverse approaches to integrating testing practices. This work provides valuable insights into the dynamics of test co‐evolution and its correlation in software maintainability. [ABSTRACT FROM AUTHOR]