iPFlakies: A Framework for Detecting and Fixing Python Order-Dependent Flaky Tests
Thu 26 May 2022 14:10 - 14:30 at Room 301+302 - Demos 2 Chair(s): August Shi
Developers typically run tests after code changes. Flaky tests, which are tests that can nondeterministically pass and fail when run on the same version of code, can mislead developers about their recent changes. Much of the prior work on flaky tests is focused on Java projects. One prominent category of flaky tests that the prior work focused on is order-dependent (OD) tests, which are tests that pass or fail depending on the order in which tests are run. For example, our prior work proposed using other tests in the test suite to fix (or correctly set up) the state needed by Java OD tests to pass.
Unlike Java flaky tests, flaky tests in other programming languages have received less attention. To help with this problem, another piece of prior work recently studied flaky tests in Python projects and detected many OD tests. Unfortunately, the work did not identify the other tests in the test suites that can be used to fix the OD tests. To fill this gap, we propose iPFlakies, a framework for automatically detecting and fixing Python OD tests. Using iPFlakies, we extend the prior work’s dataset to include (1) tests that can be used to reproduce and fix the OD tests and (2) patches for the OD tests. Our work to extend the dataset finds that reproducing passing and failing test results of flaky tests can be difficult and that iPFlakies is effective at detecting and fixing Python OD tests. To aid future research, we make our iPFlakies framework, dataset improvements, and experimental infrastructure publicly available.
Thu 12 MayDisplayed time zone: Eastern Time (US & Canada) change
20:00 - 21:00 | Software Testing 4DEMO - Demonstrations at ICSE Demo room 1 Chair(s): August Shi University of Texas at Austin | ||
20:00 15mDemonstration | JMocker: Refactoring Test-Production Inheritance by Mockito DEMO - Demonstrations Xiao Wang Stevens Institute of Technology, Lu Xiao Stevens Institute of Technology, Tingting Yu University of Cincinnati, Anne Woepse Analytical Graphics, Sunny Wong Envestnet Link to publication DOI Media Attached | ||
20:15 15mDemonstration | A Dynamic Analysis Tool for Memory Safety Based on Smart Status and Source-Level Instrumentation DEMO - Demonstrations Zhe Chen Nanjing University of Aeronautics and Astronautics, Jun Wu Nanjing University of Aeronautics and Astronautics, China, Qi Zhang Nanjing University of Aeronautics and Astronautics, China, Jingling Xue UNSW Sydney Link to publication DOI Pre-print Media Attached | ||
20:30 15mDemonstration | iPFlakies: A Framework for Detecting and Fixing Python Order-Dependent Flaky Tests DEMO - Demonstrations Ruixin Wang Zhejiang University, Yang Chen Huazhong University of Science and Technology, Wing Lam University of Illinois at Urbana-Champaign Pre-print Media Attached |
Thu 26 MayDisplayed time zone: Eastern Time (US & Canada) change
13:30 - 15:00 | |||
13:30 20mDemonstration | SynTest-Solidity: Automated Test Case Generation and Fuzzing for Smart Contracts DEMO - Demonstrations Mitchell Olsthoorn Delft University of Technology, Dimitri Stallenberg Delft University of Technology, Arie van Deursen Delft University of Technology, Netherlands, Annibale Panichella Delft University of Technology DOI Pre-print Media Attached | ||
13:50 20mDemonstration | DiffWatch: Watch Out for the Evolving Differential Testing in Deep Learning Libraries DEMO - Demonstrations Pre-print Media Attached | ||
14:10 20mDemonstration | iPFlakies: A Framework for Detecting and Fixing Python Order-Dependent Flaky Tests DEMO - Demonstrations Ruixin Wang Zhejiang University, Yang Chen Huazhong University of Science and Technology, Wing Lam University of Illinois at Urbana-Champaign Pre-print Media Attached |