ICSE 2024
Fri 12 - Sun 21 April 2024 Lisbon, Portugal
Wed 17 Apr 2024 16:45 - 17:00 at Eugénio de Andrade - Testing: various bug types 1 Chair(s): June Sallou

Regression testing is an important part of the development process but suffers from the presence of flaky tests. Flaky tests nondeterministically pass or fail when run on the same code, misleading developers about the correctness of their changes. A common type of flaky tests are async flaky tests that flakily fail due to timing-related issues such as a asynchronous waits that do not return in time or different thread interleavings during execution. Developers commonly try to repair async flaky tests by inserting or increasing some wait time, but such repairs are unreliable.

We propose FlakeSync, a technique for automatically repairing async flaky tests by introducing synchronization for a specific test execution. FlakeSync works by identifying a critical point, representing some key part of code that must be executed early w.r.t. other concurrently executing code, and a barrier point, representing the part of code that should wait until the critical point has been executed. FlakeSync can modify code to check when the critical point is executed and have the barrier point keep waiting until the critical point has been executed, essentially synchronizing these two parts of code for the specific test execution. Our evaluation of FlakeSync on known flaky tests from prior work shows that FlakeSync can automatically repair 83.75% of async flaky tests, and the resulting changes add a median overhead of only 1.00X the original test runtime. We submitted 10 pull requests with our changes to developers, with 3 already accepted and none rejected.

Wed 17 Apr

Displayed time zone: Lisbon change

16:00 - 17:30
Testing: various bug types 1Research Track / Software Engineering in Practice at Eugénio de Andrade
Chair(s): June Sallou Delft University of Technology
16:00
15m
Talk
CERT: Finding Performance Issues in Database Systems Through the Lens of Cardinality Estimation
Research Track
Jinsheng Ba National University of Singapore, Manuel Rigger National University of Singapore
Pre-print
16:15
15m
Talk
Optimistic Prediction of Synchronization-Reversal Data Races
Research Track
Zheng Shi National University of Singapore, Umang Mathur National University of Singapore, Andreas Pavlogiannis Aarhus University
16:30
15m
Talk
Mozi: Discovering DBMS Bugs via Configuration-Based Equivalent Transformation
Research Track
Jie Liang , Zhiyong Wu Tsinghua University, China, Jingzhou Fu School of Software, Tsinghua University, Mingzhe Wang Tsinghua University, Chengnian Sun University of Waterloo, Yu Jiang Tsinghua University
16:45
15m
Talk
FlakeSync: Automatically Repairing Async Flaky Tests
Research Track
Shanto Rahman University of Texas at Austin, August Shi The University of Texas at Austin
17:00
15m
Talk
Testing the Limits: Unusual Text Inputs Generation for Mobile App Crash Detection with Large Language Model
Research Track
Zhe Liu Institute of Software, Chinese Academy of Sciences, Chunyang Chen Technical University of Munich (TUM), Junjie Wang Institute of Software, Chinese Academy of Sciences, Mengzhuo Chen Institute of Software, Chinese Academy of Sciences, Boyu Wu University of Chinese Academy of Sciences, Beijing, China, Zhilin Tian Pennsylvania State University, Yuekai Huang Institute of Software, Chinese Academy of Sciences, Jun Hu Institute of Software, Chinese Academy of Sciences, Qing Wang Institute of Software, Chinese Academy of Sciences
17:15
15m
Talk
AutoConsis: Automatic GUI-driven Data Inconsistency Detection of Mobile Apps
Software Engineering in Practice
Yongxiang Hu Fudan University, Hailiang Jin Meituan Inc., Xuan Wang Fudan University, Jiazhen Gu The Chinese University of Hong Kong, Shiyu Guo Meituan, Chaoyi Chen Meituan, Xin Wang Fudan University, Yangfan Zhou Fudan University