ISSTA 2019
Mon 15 - Fri 19 July 2019 Beijing, China
Thu 18 Jul 2019 16:00 - 16:22 at Grand Ballroom - APIs and Symbolic Execution Chair(s): Moonzoo Kim

Application Programming Interfaces (APIs) typically come with (implicit) usage constraints. The violations of these constraints (API misuses) can lead to software crashes. Even though there are several tools that can detect API misuses, most of them suffer from a very high rate of false positives. We introduce Catcher, a novel API misuse detection approach that combines static exception propagation analysis with automatic search-based test case generation to effectively and efficiently pinpoint crash-prone API misuses in client applications. We validate Catcher against 21 Java applications, targeting misuses of the Java platform’s API. Our results indicate that Catcher is able to generate test cases that uncover 243 (unique) API misuses that result in crashes. Our empirical evaluation shows that Catcher can detect a large number of misuses (77 cases) that would remain undetected by the traditional coverage-based test case generator EvoSuite. Additionally, Catcher is on average eight times faster than EvoSuite in generating test cases for the identified misuses. Finally, we find that the majority of the exceptions triggered by Catcher are unexpected to developers i.e., not only unhandled in the source code but also not listed in the documentation of the client applications.

Thu 18 Jul

Displayed time zone: Beijing, Chongqing, Hong Kong, Urumqi change

16:00 - 17:30
APIs and Symbolic ExecutionTechnical Papers at Grand Ballroom
Chair(s): Moonzoo Kim KAIST
16:00
22m
Talk
Effective and Efficient API Misuse Detection via Exception Propagation and Search-based TestingArtifacts ReusableArtifacts Functional
Technical Papers
Maria Kechagia University College London, Xavier Devroey Delft University of Technology, Annibale Panichella Deflt University of Technology, Georgios Gousios TU Delft, Arie van Deursen Delft University of Technology
DOI Pre-print Media Attached
16:22
22m
Talk
Automated API-Usage Update for Android AppsArtifacts Functional
Technical Papers
Mattia Fazzini Georgia Institute of Technology, Qi Xin Georgia Institute of Technology, Alessandro Orso Georgia Tech
16:45
22m
Talk
A Large-Scale Study of Application Incompatibilities in AndroidArtifacts Functional
Technical Papers
Haipeng Cai Washington State University, USA, Ziyi Zhang , Li Li Monash University, Australia, Xiaoqin Fu Washington State University
Pre-print
17:07
22m
Talk
Deferred Concretization in Symbolic Execution via Fuzzing
Technical Papers
Awanish Pandey IIT Kanpur, India, Phani Raj Goutham Kotcharlakota , Subhajit Roy IIT Kanpur, India