Publication Type
Conference Proceeding Article
Version
acceptedVersion
Publication Date
10-2019
Abstract
Developers spend a large portion of their time and effort on comprehending source code. While many studies have investigated how developers approach these comprehension tasks and what factors influence their success, less is known about how developers comprehend test code specifically, despite the undisputed importance of testing. In this paper, we report on the results of an empirical study with 44 developers to understand which factors influence developers when comprehending Java test code. We measured three dependent variables: the total time spent reading a test suite, the ability to identify the overall purpose of a test suite, and the ability to produce additional test cases to extend a test suite. The main findings of our study, with several implications for future research and practitioners, are that (i) prior knowledge of the software project decreases the total reading time, (ii) experience with Java affects the proportion of time spent on the Arrange and Assert sections of test cases, (iii) experience with Java and prior knowledge of the software project positively influence the ability to produce additional test cases of certain categories, and (iv) experience with automated tests is an influential factor towards understanding and extending an automated test suite.
Keywords
Program Comprehension, Software Testing
Discipline
Software Engineering
Research Areas
Software and Cyber-Physical Systems
Publication
Proceedings of the 35th International Conference on Software Maintenance and Evolution, Cleveland, September 30 - October 4
First Page
501
Last Page
512
ISBN
9781728130941
Identifier
10.1109/ICSME.2019.00084
Publisher
IEEE
City or Country
Piscataway, NJ
Citation
YU, Chak Shun; TREUDE, Christoph; and ANICHE, Maurício.
Comprehending test code: An empirical study. (2019). Proceedings of the 35th International Conference on Software Maintenance and Evolution, Cleveland, September 30 - October 4. 501-512.
Available at: https://ink.library.smu.edu.sg/sis_research/8851
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-No Derivative Works 4.0 International License.
Additional URL
https://doi.org/10.1109/ICSME.2019.00084