McFly: Time-Travel Debugging for the Web

10/28/2018
by   John Vilk, et al.
0

Time-traveling debuggers offer the promise of simplifying debugging by letting developers freely step forwards and backwards through a program's execution. However, web applications present multiple challenges that make time-travel debugging especially difficult. A time-traveling debugger for web applications must accurately reproduce all network interactions, asynchronous events, and visual states observed during the original execution, both while stepping forwards and backwards. This must all be done in the context of a complex and highly multithreaded browser runtime. At the same time, to be practical, a time-traveling debugger must maintain interactive speeds. This paper presents McFly, the first time-traveling debugger for web applications. McFly departs from previous approaches by operating on a high-level representation of the browser's internal state. This approach lets McFly provide accurate time-travel debugging - maintaining JavaScript and visual state in sync at all times - at interactive speeds. McFly's architecture is browser-agnostic, building on web standards supported by all major browsers. We have implemented McFly as an extension to the Microsoft Edge web browser, and core parts of McFly have been integrated into a time-traveling debugger product from Microsoft.

READ FULL TEXT

page 1

page 3

research
05/15/2023

Time-based Repair for Asynchronous Wait Flaky Tests in Web Testing

Asynchronous waits are one of the most prevalent root causes of flaky te...
research
09/26/2016

A computer program for simulating time travel and a possible 'solution' for the grandfather paradox

While the possibility of time travel in physics is still debated, the ex...
research
12/15/2021

Next-generation Web Applications with WebAssembly and TruffleWasm

In modern software development, the JavaScript ecosystem of various fram...
research
10/27/2021

Automated Evaluation of Web Site Accessibility Using A Dynamic Accessibility Measurement Crawler

Achieving accessibility compliance is extremely important for many gover...
research
06/09/2012

A novel 2.5D approach for interfacing with web applications

Web applications need better user interface to be interactive and attrac...
research
02/22/2022

An Architecture for Web 3.0 and the Emergence of Spontaneous Time Order

In this study, we proposed an architecture for Web 3.0, which is based o...
research
11/06/2020

Look Before You Leap: Trusted User Interfaces for the Immersive Web

Part of what makes the web successful is that anyone can publish content...

Please sign up or login with your details

Forgot password? Click here to reset