Busca avançada
Ano de início
Entree


Event Race Detection for Node.js Using Delay Injections

Texto completo
Autor(es):
Endo, Andre Takeshi ; Moller, Anders
Número total de Autores: 2
Tipo de documento: Artigo Científico
Fonte: 39TH EUROPEAN CONFERENCE ON OBJECT-ORIENTED PROGRAMMING, ECOOP 2025; v. 333, p. 28-pg., 2025-01-01.
Resumo

Node.js is a widely used platform for building JavaScript server-side web applications, desktop applications, and software engineering tools. Its asynchronous execution model is essential for performance, but also gives rise to event races, which cause many subtle bugs that can be hard to detect and reproduce. Current solutions to expose such races are based on modifications of the source code of the Node.js system or on guided executions using complex happens-before modeling. This paper presents a simpler and more effective approach called NACD that works by dynamically instrumenting core asynchronous operations in the Node.js runtime system to inject delays and thereby reveal event race bugs. It consists of a small, robust runtime instrumentation module implemented in JavaScript that is configured by a flexible JSON model of the essential parts of the Node.js API. Experimental results show that NACD can reproduce event race bugs with higher probability and fewer runs than state-of-the-art tools. (AU)

Processo FAPESP: 23/00577-8 - Amplificação de testes automatizados por meio de análise dinâmica
Beneficiário:André Takeshi Endo
Modalidade de apoio: Auxílio à Pesquisa - Regular