The emergence of the microservices-oriented architectural style calls for novel methodologies and technological frameworks that support the design, development, and maintainance of applications structured according to that new style. In this paper, we consider the issue of designing suitable strategies for the governance and the automation of testing activities within the microservices paradigm. We focus on the problem of discovering relations between test programs that help avoiding to re-run all the available test suites each time one of its constituents evolves. We propose an analysis technique, based on symbolic execution of test programs, which is able to collect information about the invocations of local and remote APIs performed when running such programs. Symbolic execution enables the analysis of sets of executions corresponding to different input data, and hence it is also suitable for parametric test programs. The information extracted by symbolic execution is processed by a rule-based automated reasoning engine, which infers dependencies and similarities among test programs. In particular, test programs are considered similar if they involve the same microservice instance, or they connect to the same remote API, or they locally activate overlapping APIs, or they raise similar kinds of errors. We show the viability of our approach by presenting a case study within the context of a real-world microservice application that implements an open-source educational platform.

De Angelis, E., De Angelis, G., Pellegrini, A., Proietti, M. (2021). Inferring Relations Among Test Programs in Microservices Applications. In 2021 IEEE International Conference on Service-Oriented System Engineering (SOSE) (pp.114-123). IEEE [10.1109/SOSE52839.2021.00018].

Inferring Relations Among Test Programs in Microservices Applications

Alessandro Pellegrini;
2021-08-01

Abstract

The emergence of the microservices-oriented architectural style calls for novel methodologies and technological frameworks that support the design, development, and maintainance of applications structured according to that new style. In this paper, we consider the issue of designing suitable strategies for the governance and the automation of testing activities within the microservices paradigm. We focus on the problem of discovering relations between test programs that help avoiding to re-run all the available test suites each time one of its constituents evolves. We propose an analysis technique, based on symbolic execution of test programs, which is able to collect information about the invocations of local and remote APIs performed when running such programs. Symbolic execution enables the analysis of sets of executions corresponding to different input data, and hence it is also suitable for parametric test programs. The information extracted by symbolic execution is processed by a rule-based automated reasoning engine, which infers dependencies and similarities among test programs. In particular, test programs are considered similar if they involve the same microservice instance, or they connect to the same remote API, or they locally activate overlapping APIs, or they raise similar kinds of errors. We show the viability of our approach by presenting a case study within the context of a real-world microservice application that implements an open-source educational platform.
15th IEEE International Conference on Service Oriented Systems Engineering
Oxford, UK
2021
Rilevanza internazionale
contributo
ago-2021
Settore ING-INF/05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
English
software testing; microservices architecture; test program similarity; symbolic execution; automated reasoning
Intervento a convegno
De Angelis, E., De Angelis, G., Pellegrini, A., Proietti, M. (2021). Inferring Relations Among Test Programs in Microservices Applications. In 2021 IEEE International Conference on Service-Oriented System Engineering (SOSE) (pp.114-123). IEEE [10.1109/SOSE52839.2021.00018].
De Angelis, E; De Angelis, G; Pellegrini, A; Proietti, M
File in questo prodotto:
File Dimensione Formato  
DeA21.pdf

solo utenti autorizzati

Tipologia: Documento in Post-print
Licenza: Copyright dell'editore
Dimensione 315.55 kB
Formato Adobe PDF
315.55 kB Adobe PDF   Visualizza/Apri   Richiedi una copia

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/2108/293794
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 3
  • ???jsp.display-item.citation.isi??? 1
social impact