What Makes Test Programs Similar in Microservices Applications?

Emanuele De Angelis, Guglielmo De Angelis, Alessandro Pellegrini, and Maurizio Proietti


Published in: Journal of Systems and Software, 2023
pdf Download PDF

Abstract:
The emergence of microservice architecture calls for novel methodologies and technological frameworks that support the design, development, and maintenance of applications structured according to this new architectural style. In this paper, we consider the issue of designing suitable strategies for the governance of testing activities within the microservices paradigm. We focus on the problem of discovering implicit relations between test programs that help to avoid re-running all the available test suites each time one of its constituents evolves. We propose a dynamic analysis technique and its supporting framework that collects information about the invocations of local and remote APIs. Information on test program execution is obtained in two ways: instrumenting the test program code or running a symbolic execution engine. The extracted information is processed by a rule-based automated reasoning engine, which infers implicit similarities among test programs. We show that our analysis can be used to support the reduction of test suites. The proposed approach has been validated against two real-world microservice applications.

BibTeX Entry:

@article{DeA23,
author = {De Angelis, Emanuele and De Angelis, Guglielmo and Pellegrini, Alessandro and Proietti, Maurizio},
title = {What Makes Test Programs Similar in Microservices Applications?},
journal = {Journal of Systems and Software},
year = {2023},
month = jan,
volume = {201},
pages = {111674},
issn = {0164-1212},
publisher = {Elsevier},
series = {SPE},
doi = {10.1016/j.jss.2023.111674}
}