Guess What: Test Case Generation for Javascript with Unsupervised Probabilistic Type Inference

Type
Publication
14th Symposium on Search-Based Software Engineering (SSBSE 2022)

Abstract

Search-based test case generation approaches make use of static type information to determine which data types should be used for the creation of new test cases. Dynamically typed languages like JavaScript, however, do not have this type information. In this paper, we propose an unsupervised probabilistic type inference approach to infer data types within the test case generation process. We evaluated the proposed approach on a benchmark of 98~units under test (i.e., exported classes and functions) compared to random type sampling w.r.t. branch coverage. Our results show that our type inference approach achieves a statistically significant increase in 56% of the test files with up to 71% of branch coverage compared to the baseline.

Annibale Panichella
Annibale Panichella
Associate Professor in Software Engineering

My research interests include software testing, SE for AI, SE for blockchain, and cyber-physical systems