Test Code Quality and Its Relation to Issue Handling Performance
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 0, NO. 0, JANUARY 2000 1 Test Code Quality and Its Relation to Issue Handling Performance Dimitrios Athanasiou, Ariadi Nugroho Member, IEEE, Joost Visser Member, IEEE Computer Society and Andy Zaidman Member, IEEE Computer Society Abstract—Automated testing is a basic principle of agile development. Its benefits include early defect detection, defect cause localization and removal of fear to apply changes to the code. Therefore, maintaining high quality test code is essential. This study introduces a model that assesses test code quality by combining source code metrics that reflect three main aspects of test code quality: completeness, effectiveness and maintainability. The model is inspired by the Software Quality Model of the Software Improvement Group which aggregates source code metrics into quality ratings based on benchmarking. To validate the model we assess the relation between test code quality, as measured by the model, and issue handling performance. An experiment is conducted in which the test code quality model is applied to 18 open source systems. The test quality ratings are tested for correlation with issue handling indicators, which are obtained by mining issue repositories. In particular, we study the (1) defect resolution speed, (2) throughput and (3) productivity issue handling metrics. The results reveal a significant positive correlation between test code quality and two out of the three issue handling metrics (throughput and productivity), indicating that good test code quality positively influences issue handling performance. Index Terms—Testing, Defects, Bugs, Metrics, Measurement. F 1 INTRODUCTION between the quality of the test code of a software system and the development team’s performance in fixing defects Software testing is well established as an essential part of and implementing new features.
[Show full text]