Exceptional Behaviors: How Frequently Are They Tested?
This program is tentative and subject to change.
Exceptions allow developers to handle error cases expected to occur infrequently. Ideally, good test suites should test both normal and exceptional behaviors to catch more bugs and avoid regressions. While current research analyzes exceptions that propagate to tests, it does not explore other exceptions that do not reach the tests. In this paper, we provide an empirical study to explore how frequently exceptional behaviors are tested in real-world systems. We consider both exceptions that propagate to tests and the ones that do not reach the tests. For this purpose, we run an instrumented version of test suites, monitor their execution, and collect information about the exceptions raised at runtime. We analyze the test suites of 25 Python systems, covering 5,372 executed methods, 17.9M calls, and 1.4M raised exceptions. We find that 21.4% of the executed methods do raise exceptions at runtime. In methods that raise exceptions, on the median, 1 in 10 calls exercise exceptional behaviors. Close to 80% of the methods that raise exceptions do so infrequently, but about 20% raise exceptions more frequently. Finally, we provide implications for researchers and practitioners. We suggest developing novel tools to support exercising exceptional behaviors and refactoring expensive try/except blocks. We also call attention to the fact that exception-raising behaviors are not necessarily “abnormal” or rare.
This program is tentative and subject to change.
Tue 29 AprDisplayed time zone: Eastern Time (US & Canada) change
11:00 - 12:30 | |||
11:00 22mFull-paper | An Adaptive Testing Approach Based on Field Data AST 2025 Samira Santos da Silva Gran Sasso Science Institute (GSSI), Ricardo Caldas Gran Sasso Science Institute (GSSI), Patrizio Pelliccione Gran Sasso Science Institute, L'Aquila, Italy, Antonia Bertolino National Research Council, Italy Pre-print | ||
11:22 22mFull-paper | Exceptional Behaviors: How Frequently Are They Tested? AST 2025 Pre-print | ||
11:45 22mFull-paper | Improving Examples in Web API Specifications using Iterated-Calls In-Context Learning AST 2025 Kush Jain Carnegie Mellon University, Kiran Kate IBM Research, Jason Tsay IBM Research, Claire Le Goues Carnegie Mellon University, Martin Hirzel IBM Research | ||
12:07 22mFull-paper | What Types of Automated Tests do Developers Write? AST 2025 Marko Ivanković University of Passau, Luka Rimanić Google Switzerland GmbH, Ivan Budiselic Google, Goran Petrovic Google; Universität Passau, Gordon Fraser University of Passau, René Just University of Washington |