English

Automatic Property-based Testing of GraphQL APIs

Software Engineering 2020-12-15 v1

Abstract

In recent years, GraphQL has become a popular way to expose web APIs. With its raise of adoption in industry, the quality of GraphQL APIs must be also assessed, as with any part of a software system, and preferably in an automated manner. However, there is currently a lack of methods to automatically generate tests to exercise GraphQL APIs. In this paper, we propose a method for automatically producing GraphQL queries to test GraphQL APIs. This is achieved using a property-based approach to create a generator for queries based on the GraphQL schema of the system under test. Our evaluation on a real world software system shows that this approach is both effective, in terms of finding real bugs, and efficient, as a complete schema can be covered in seconds. In addition, we evaluate the fault finding capability of the method when seeding known faults. 73% of the seeded faults where found, with room for improvements with regards to domain specific behavior, a common oracle challenge in automatic test generation.

Keywords

Cite

@article{arxiv.2012.07380,
  title  = {Automatic Property-based Testing of GraphQL APIs},
  author = {Stefan Karlsson and Adnan Čaušević and Daniel Sundmark},
  journal= {arXiv preprint arXiv:2012.07380},
  year   = {2020}
}
R2 v1 2026-06-23T20:56:46.492Z