Comparing the co-evolution of production and test code in open source and industrial developer test processes through repository mining
Bart Van Rompaey, Andy Zaidman, Arie van Deursen, Serge Demeyer · Research Repository (Delft University of Technology) · 2008
This paper represents an extension to our previous work: Mining software repositories to study coevolution of production & test code. Proceedings of the International Conference on Software Testing, Verification, and Validation (ICST), IEEE Computer Society, 2008; doi:10.1109/ICST.2008.47 Engineering software systems is a multidimensional activity, whereby a number of artifacts must be created — and maintained — synchronously. In this paper we investigate how production code and the accompanying developer tests co-evolve, to create awareness with developers and managers alike about the testing process that is followed. We compose three views on this co-evolution through repository mining (i.e., exploration of a project’s versioning system), test coverage reports and size metrics. This analysis approach is realized by a tool called TeMo. We compare two open source and one industrial software project and evaluate our results both with the help of log messages and the original developers of the software system. From our study we observe a number of different co-evolution scenarios, which are a consequence of the different development methodologies, e.g., eXtreme Programming, that the developers intend to follow.