Comprehending test code: An empirical study

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 u...

Full description

Saved in:
Bibliographic Details
Main Authors: YU, Chak Shun, TREUDE, Christoph, ANICHE, Maurício
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2019
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/8851
https://ink.library.smu.edu.sg/context/sis_research/article/9854/viewcontent/icsme19a.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-9854
record_format dspace
spelling sg-smu-ink.sis_research-98542024-06-13T09:16:03Z Comprehending test code: An empirical study YU, Chak Shun TREUDE, Christoph ANICHE, Maurício 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. 2019-10-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/8851 info:doi/10.1109/ICSME.2019.00084 https://ink.library.smu.edu.sg/context/sis_research/article/9854/viewcontent/icsme19a.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Program Comprehension Software Testing Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Program Comprehension
Software Testing
Software Engineering
spellingShingle Program Comprehension
Software Testing
Software Engineering
YU, Chak Shun
TREUDE, Christoph
ANICHE, Maurício
Comprehending test code: An empirical study
description 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.
format text
author YU, Chak Shun
TREUDE, Christoph
ANICHE, Maurício
author_facet YU, Chak Shun
TREUDE, Christoph
ANICHE, Maurício
author_sort YU, Chak Shun
title Comprehending test code: An empirical study
title_short Comprehending test code: An empirical study
title_full Comprehending test code: An empirical study
title_fullStr Comprehending test code: An empirical study
title_full_unstemmed Comprehending test code: An empirical study
title_sort comprehending test code: an empirical study
publisher Institutional Knowledge at Singapore Management University
publishDate 2019
url https://ink.library.smu.edu.sg/sis_research/8851
https://ink.library.smu.edu.sg/context/sis_research/article/9854/viewcontent/icsme19a.pdf
_version_ 1814047594168451072