Abstract

Nowadays, REpresentational State Transfer Application Programming Interfaces (REST APIs) are widely used in web applications, hence a plethora of test cases are developed to validate the APIs calls. We propose a solution that automates the generation of test cases for REST APIs based on their specifications. In our approach, apart from the automatic generation of test cases, we provide an option for the user to influence the test case generation process. By adding user interaction, we aim to augment the automatic generation of APIs test cases with human testing expertise and specific context. We use the latest version of OpenAPI 3.x and a wide range of coverage metrics to analyze the functionality and performance of the generated test cases, and non-functional metrics to analyze the performance of the APIs. The experiments proved the effectiveness and practicability of our method.

Highlights

  • Nowadays, in the era of the internet and interconnectivity, communication and interactions over web applications are very common

  • Due to the major feature improvement compared to version 2.x, in the current work, we propose a test case generation process based on the latest OpenAPI version

  • We have found several approaches and methods of testing web services by using the project specifications to generate test cases

Read more

Summary

Introduction

In the era of the internet and interconnectivity, communication and interactions over web applications are very common. Web applications are interacting with their users through various devices, such as PCs, smartphones, and tablets, but they exchange information with other applications. For these communications between applications to work properly, web services usually employ APIs as a backbone process. The high demand and usage of web services require high quality services that can be effectively ensured based on an automated and continuous testing process of the functionalities and performance of the APIs. Soon after the release of the REST architecture [1], it became the most popular architecture used for Web APIs development. The request can be considered as formed by the REST API endpoint URL, API method—which mostly includes the CRUD operations (GET, PUT, POST, DELETE) and the parameters

Objectives
Methods
Results
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call