Title
Data-Oriented Differential Testing of Object-Relational Mapping Systems
Abstract
ABSTRACTWe introduce, what is to the best of our knowledge, the first approach for systematically testing Object-Relational Mapping (ORM) systems. Our approach leverages differential testing to establish a test oracle for ORM-specific bugs. Specifically, we first generate random relational database schemas, set up the respective databases, and then, we query these databases using the APIs of the ORM systems under test. To tackle the challenge that ORMs lack a common input language, we generate queries written in an abstract query language. These abstract queries are translated into concrete, executable ORM queries, which are ultimately used to differentially test the correctness of target implementations. The effectiveness of our method heavily relies on the data inserted to the underlying databases. Therefore, we employ a solver-based approach for producing targeted database records with respect to the constraints of the generated queries. We implement our approach as a tool, called CYNTHIA, which found 28 bugs in five popular ORM systems. The vast majority of these bugs are confirmed (25 / 28), more than half were fixed (20 / 28), and three were marked as release blockers by the corresponding developers.
Year
DOI
Venue
2021
10.1109/ICSE43902.2021.00137
International Conference on Software Engineering
Keywords
DocType
ISSN
Object-Relational Mapping, Differential Testing, Automated Testing
Conference
0270-5257
Citations 
PageRank 
References 
1
0.36
0
Authors
5
Name
Order
Citations
PageRank
Thodoris Sotiropoulos111.03
Stefanos Chaliasos221.72
Vaggelis Atlidakis3272.28
Dimitris Mitropoulos49015.14
Diomidis Spinellis52023178.89