Test Coverage in Microservice Systems: An Automated Approach to E2E and API Test Coverage Metrics
-
Published:2024-05-13
Issue:10
Volume:13
Page:1913
-
ISSN:2079-9292
-
Container-title:Electronics
-
language:en
-
Short-container-title:Electronics
Author:
Abdelfattah Amr S.1ORCID, Cerny Tomas2ORCID, Yero Jorge1ORCID, Song Eunjee1ORCID, Taibi Davide3ORCID
Affiliation:
1. Department of Computer Science, Baylor University, Waco, TX 76706, USA 2. Department of Systems and Industrial Engineering, University of Arizona, Tucson, AZ 85721, USA 3. M3S, Faculty of Information Technology and Electrical Engineering, University of Oulu, 90570 Oulu, Finland
Abstract
Test coverage is a critical aspect of the software development process, aiming for overall confidence in the product. When considering cloud-native systems, testing becomes complex, as it becomes necessary to deal with multiple distributed microservices that are developed by different teams and may change quite rapidly. In such a dynamic environment, it is important to track test coverage. This is especially relevant for end-to-end (E2E) and API testing, as these might be developed by teams distinct from microservice developers. Moreover, indirection exists in E2E, where the testers may see the user interface but not know how comprehensive the test suits are. To ensure confidence in health checks in the system, mechanisms and instruments are needed to indicate the test coverage level. Unfortunately, there is a lack of such mechanisms for cloud-native systems. This manuscript introduces test coverage metrics for evaluating the extent of E2E and API test suite coverage for microservice endpoints. It elaborates on automating the calculation of these metrics with access to microservice codebases and system testing traces, delves into the process, and offers feedback with a visual perspective, emphasizing test coverage across microservices. To demonstrate the viability of the proposed approach, we implement a proof-of-concept tool and perform a case study on a well-established system benchmark assessing existing E2E and API test suites with regard to test coverage using the proposed endpoint metrics. The results of endpoint coverage reflect the diverse perspectives of both testing approaches. API testing achieved 91.98% coverage in the benchmark, whereas E2E testing achieved 45.42%. Combining both coverage results yielded a slight increase to approximately 92.36%, attributed to a few endpoints tested exclusively through one testing approach, not covered by the other.
Funder
National Science Foundation Academy of Finland
Reference37 articles.
1. Tsai, W.T., Bai, X., Paul, R., Shao, W., and Agarwal, V. (2001, January 8–12). End-to-end integration testing design. Proceedings of the 25th Annual International Computer Software and Applications Conference, COMPSAC 2001, Chicago, IL, USA. 2. Ehsan, A., Abuhaliqa, M.A.M., Catal, C., and Mishra, D. (2022). RESTful API testing methodologies: Rationale, challenges, and solution directions. Appl. Sci., 12. 3. Sharma, A., and Revathi, M. (2018, January 15–16). Automated API testing. Proceedings of the 2018 3rd International Conference on Inventive Computation Technologies (ICICT), Coimbatore, India. 4. Bhojwani, R. (2024, May 10). Design Patterns for Microserviceto-Microservice Communication-Dzone Microservices. Available online: https://dzone.com/articles/design-patterns-for-microservices. 5. Microservice Testing Approaches: A Systematic Literature Review;Ghani;Int. J. Integr. Eng.,2019
Cited by
1 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
|
|