dc.contributor.author | Fischer, Hartmut | |
dc.date.accessioned | 2022-05-02T12:47:00Z | |
dc.date.available | 2022-05-02T12:47:00Z | |
dc.date.issued | 2022-05-02 | |
dc.identifier.uri | https://hdl.handle.net/2077/71496 | |
dc.description.abstract | Context:There is a trend in the software industry to
migrate systems from a monolithic to a microservice architecture
(MSA) due to the gains in agility and scalability. An MSA-based
system consists of a suite of small microservices which can be
developed, tested, and deployed independently.
Problem: MSA puts challenges on software testing due to
the complexity caused by the integration of many autonomous
microservices into one system. New best practices with testing
strategies in terms of test types and test proportions (pyramid
shape) emerged, but are only studied in isolated cases.
Objective: The aim of this study is to explore microservice
testing in a real-life context and to compare it to best practices.
Approach: Repository mining is used to identify open-source
MSA-based systems. Consumer-driven contract testing (CDC),
a method recommended by MSA practitioners, was selected as
inclusion and system identification criteria. Four systems with
overall 22 microservices were analyzed.
Results: The recommended five test types were identified, but
not in all systems. The bigger a microservice, the better its test
strategy aligned to the pyramid shape, but the test proportions
also dependent on the microservice’s distinct function in the
system. Using CDC tests seems to minimize the number of system
tests. | en_US |
dc.language.iso | eng | en_US |
dc.subject | Microservice architecture | en_US |
dc.subject | integration test | en_US |
dc.subject | consumer-driven contract test | en_US |
dc.subject | test pyramid | en_US |
dc.subject | repository mining | en_US |
dc.title | Testing in microservice systems: A repository mining study on open-source systems using contract testing | en_US |
dc.title.alternative | Testing in microservice systems: A repository mining study on open-source systems using contract testing | en_US |
dc.type | text | |
dc.setspec.uppsok | Technology | |
dc.type.uppsok | M2 | |
dc.contributor.department | Göteborgs universitet/Institutionen för data- och informationsteknik | swe |
dc.contributor.department | University of Gothenburg/Department of Computer Science and Engineering | eng |
dc.type.degree | Student essay | |