Kazuki Nishiura, Yuta Maezawa, Hironori Washizaki, Shinichi Honiden, “Mutation Analysis for JavaScript Web Applications Testing,” Proceedings of 24th International Conference on Software Engineering and Knowledge Engineering (SEKE 2013), pp.159-165, Hyatt Harborside at Logan Int’l Airport, Boston, June 27-29, 2013. (PDF)
Abstract
When developers test modern web applications that use JavaScript, challenging issues lie in their event-driven, asynchronous, and dynamic features. Many researchers have assessed the adequacy of test cases with code coverage criteria; however, in this paper, we show that the code coverage-based approach possibly misses some faults in the applications. We propose a mutation analysis approach for estimating the fault-finding capability of test cases. We assume that developers can find overlooked fault instances and improve the test cases with the estimated capability. To create a set of faulty programs, i.e., mutants, we classify the JavaScript features in web applications and then define a comprehensive set of mutation operators. We conducted a case study on a real-world application and found that our approach supported the improvement of test cases to expose hand-seeded faults by an extra ten percent.