paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Mutode: generic JavaScript and Node.js mutation testing tool

Mutode:通用的 JavaScript 与 Node.js 变异测试工具
ISSTA Proceedings of the 27th ACM SIGSOFT International Symposium on Software Testing and Analysis2018匹配度 2/10 · 该论文提出JavaScript/Node.js变异测试工具Mutode,属于软件测试与调试领域,不涉及用户关注的静态分析、LLM/Agent、浮点程序分析或贝叶斯程序分析。虽有一定工程实现和工业生态(npm)背景,但与研究方向核心交集很少。引用 17 inbox
Diego Rodríguez-Baquero, Mario Linares-Vásquez
crossref: 2026-09-12

AI 速览

一句话:提出开源变异测试工具 Mutode,利用 npm 生态为 JavaScript/Node.js 应用注入变异以评估测试套件有效性。

论文关注 JavaScript 与 Node.js 生态中变异测试工具匮乏的问题:npm 上托管着超过 70 万个包、每周下载量超 50 亿次,软件复用带来巨大便利的同时也传播了缺陷与故障软件,而现有变异测试框架很少覆盖 Node.js 运行时与基于 npm 的应用。作者首先回顾了针对 JavaScript 与 Node.js 的变异算子先前工作,进而提出 Mutode——一个利用 npm 包生态的开源变异测试工具,可向程序注入变异体并运行应用测试套件,判定变异体被杀死还是存活,从而评估测试套件有效性。为验证效果,作者在 npm 排名前 20 且具备自动化测试套件的模块中选取 12 个进行了实证评估。

问题
JavaScript 与 Node.js/npm 应用缺少可用的变异测试工具,难以评估测试套件对缺陷的检测能力。
方法
提出开源工具 Mutode,基于 npm 包生态实现通用变异测试,向 JavaScript/Node.js 程序注入变异并运行测试套件统计杀死/存活情况。
评估
在 npm 排名前 20 的模块中选取 12 个具有自动化测试套件的模块上运行 Mutode,实证评估其有效性。
原文摘要(Abstract)

Mutation testing is a technique in which faults (mutants) are injected into a program or application to assess its test suite effectiveness. It works by inserting mutants and running the application’s test suite to identify if the mutants are detected (killed) or not (survived) by the tests. Although computationally expensive, it has proven to be an effective method to assess application test suites. Several mutation testing frameworks and tools have been built for the various programing languages, however, very few tools have been built for the JavaScript language, more specifically, there is a lack of mutation testing tools for the Node.js runtime and npm based applications. The npm Registry is a public collection of modules of open-source code for Node.js, front-end web applications, mobile applications, robots, routers, and countless other needs of the JavaScript community. The over 700,000 packages hosted in npm are downloaded more than 5 billion times per week. More and more software is published in npm every day, representing a huge opportunity to share code and solutions, but also to share bugs and faulty software. In this paper, we briefly describe prior work for mutation operators in JavaScript and Node.js, and propose Mutode, an open source tool which leverages the npm package ecosystem to perform mutation testing for JavaScript and Node.js applications. We empirically evaluated Mutode effectiveness by running it on 12 of the top 20 npm modules that have automated test suites.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot4819,
  title = {Mutode: generic JavaScript and Node.js mutation testing tool},
  author = {Diego Rodríguez-Baquero and Mario Linares-Vásquez},
  booktitle = {ISSTA},
  year = {2018},
  doi = {10.1145/3213846.3229504}
}