Litcius/Paper detail

Evolutionary-based automated testing for GraphQL APIs

Asma Belhadi, Man Zhang, Andrea Arcuri

2022Proceedings of the Genetic and Evolutionary Computation Conference Companion14 citationsDOIOpen Access PDF

Abstract

The Graph Query Language (GraphQL) is a powerful language for APIs manipulation in web services. It has been recently introduced as an alternative solution for addressing the limitations of RESTful APIs. This paper introduces an automated solution for GraphQL APIs testing. We present a full framework for automated APIs testing, from the schema extraction to test case generation. Our approach is based on evolutionary search. Test cases are evolved to intelligently explore the solution space while maximizing code coverage criteria. The proposed framework is implemented and integrated in the open-source EVOMASTER tool. Experiments on two open-source GraphQL APIs show statistically significant improvement of the evolutionary approach compared to the baseline random search.

Topics & Concepts

Computer scienceProgramming languageOpen sourceSource codeSchema (genetic algorithms)Unit testingSoftware engineeringInformation retrievalSoftwareSoftware Testing and Debugging TechniquesSoftware Engineering ResearchSoftware System Performance and Reliability