Paper published in a book (Scientific congresses, symposiums and conference proceedings)
Private API Access and Functional Mocking in Automated Unit Test Generation
Arcuri, Andrea; Fraser, Gordon; Just, Rene
2017In IEEE International Conference on Software Testing, Verification and Validation (ICST)
Peer reviewed
 

Files


Full Text
evosuite-mocking.pdf
Author preprint (272.51 kB)
Request a copy

All documents in ORBilu are protected by a user license.

Send to



Details



Abstract :
[en] Not all object oriented code is easily testable: Dependency objects might be difficult or even impossible to instantiate, and object-oriented encapsulation makes testing potentially simple code difficult if it cannot easily be accessed. When this happens, then developers can resort to mock objects that simulate the complex dependencies, or circumvent objectoriented encapsulation and access private APIs directly through the use of, for example, Java reflection. Can automated unit test generation benefit from these techniques as well? In this paper we investigate this question by extending the EvoSuite unit test generation tool with the ability to directly access private APIs and to create mock objects using the popular Mockito framework. However, care needs to be taken that this does not impact the usefulness of the generated tests: For example, a test accessing a private field could later fail if that field is renamed, even if that renaming is part of a semantics-preserving refactoring. Such a failure would not be revealing a true regression bug, but is a false positive, which wastes the developer’s time for investigating and fixing the test. Our experiments on the SF110 and Defects4J benchmarks confirm the anticipated improvements in terms of code coverage and bug finding, but also confirm the existence of false positives. However, by ensuring the test generator only uses mocking and reflection if there is no other way to reach some part of the code, their number remains small.
Disciplines :
Computer science
Author, co-author :
Arcuri, Andrea;  University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT)
Fraser, Gordon
Just, Rene
External co-authors :
yes
Language :
English
Title :
Private API Access and Functional Mocking in Automated Unit Test Generation
Publication date :
2017
Event name :
IEEE International Conference on Software Testing, Verification and Validation (ICST)
Event date :
13-17 March 2017
Main work title :
IEEE International Conference on Software Testing, Verification and Validation (ICST)
Peer reviewed :
Peer reviewed
FnR Project :
FNR3949772 - Validation And Verification Laboratory, 2010 (01/01/2012-31/07/2018) - Lionel Briand
Available on ORBilu :
since 13 January 2017

Statistics


Number of views
84 (8 by Unilu)
Number of downloads
3 (3 by Unilu)

Scopus citations®
 
36
Scopus citations®
without self-citations
29
WoS citations
 
30

Bibliography


Similar publications



Contact ORBilu