Automated conformance testing for JavaScript engines via deep compiler fuzzing
Guixin Ye, Zhanyong Tang, Shin Hwei Tan, Songfang Huang, Dingyi Fang, Xiaoyang Sun, Lizhong Bian, Haibo Wang, Zheng Wang
Abstract
JavaScript (JS) is a popular, platform-independent programming language. To ensure the interoperability of JS programs across different platforms, the implementation of a JS engine should conform to the ECMAScript standard. However, doing so is challenging as there are many subtle definitions of API behaviors, and the definitions keep evolving.
Topics & Concepts
Fuzz testingJavaScriptComputer scienceConformance testingProgramming languageCompilerInteroperabilityUnobtrusive JavaScriptSoftware engineeringUnit testingScripting languageOperating systemRich Internet applicationSoftwareStandardizationSoftware Testing and Debugging TechniquesSoftware Engineering ResearchSoftware Reliability and Analysis Research