Data-Oriented Differential Testing of Object-Relational Mapping SystemsTechnical Track
Fri 28 May 2021 23:50 - 00:10 at Blended Sessions Room 3 - 4.2.3. Testing: 3rd Party Software
We 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 25 bugs in five popular ORM systems. The vast majority of these bugs are confirmed (23 / 25), more than half were fixed (15 / 25), and three were marked as release blockers by the corresponding developers.
Fri 28 MayDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
23:30 - 00:30 | |||
23:30 20mPaper | Evaluating Unit Testing Practices in R PackagesTechnical Track Technical Track Melina Vidoni RMIT University Pre-print Media Attached | ||
23:50 20mPaper | Data-Oriented Differential Testing of Object-Relational Mapping SystemsTechnical Track Technical Track Thodoris Sotiropoulos Athens University of Economics and Business, Stefanos Chaliasos Athens University of Economics and Business, Vaggelis Atlidakis Columbia University, Dimitris Mitropoulos National and Kapodistrian University of Athens, Diomidis Spinellis Athens University of Economics and Business & TU Delft Pre-print Media Attached | ||
00:10 20mPaper | A Practical Approach to Verification of Floating-Point C/C++ Programs with math.h/cmath FunctionsJournal-First Journal-First Papers Roberto Bagnara University of Parma, BUGSENG srl, Michele Chiari Politecnico di Milano, Roberta Gori University of Pisa, Abramo Bagnara BUGSENG srl Link to publication DOI Pre-print Media Attached |