ISSTA 2016

25th International Symposium on Software Testing and Analysis (ISSTA), July 18–20, 2016, Saarbrücken, Germany

Desktop Layout

Debugging and Repair
Research Papers
ARROW: Automated Repair of Races on Client-Side Web Pages
Weihang Wang, Yunhui Zheng, Peng Liu, Lei Xu, Xiangyu Zhang, and Patrick Eugster
(Purdue University, USA; IBM Research, USA; Nanjing University, China)
Publisher's Version
Abstract: Modern browsers have a highly concurrent page rendering process in order to be more responsive. However, such a concurrent execution model leads to various race issues. In this paper, we present ARROW, a static technique that can automatically, safely, and cost effectively patch certain race issues on client side pages. It works by statically modeling a web page as a causal graph denoting happens-before relations between page elements, according to the rendering process in browsers. Races are detected by identifying inconsistencies between the graph and the dependence relations intended by the developer. Detected races are fixed by leveraging a constraint solver to add a set of edges with the minimum cost to the causal graph so that it is consistent with the intended dependences. The input page is then transformed to respect the repair edges. ARROW has fixed 151 races from 20 real world commercial web sites.


Time stamp: 2019-08-26T02:31:36+02:00