Feature Friday – Key Benefits of the Prerequisite API Testing Feature
Ahhh, Spring. What a wonderful time to open our windows and doors and let the fresh air into our homes. As the cover of winter slowly lifts, trees begin to bud, birds begin to sing, and the scent of fresh flowers tickle the nose.
But let’s not forget the dangers that may lie just around the corner. Securing our applications, much like our houses, is of critical importance. Sensitive data and information can be accessed and stolen, similar to a burglar breaking into your house. Many applications require tokens or keys to access data. But, how exactly can those processes be tested?
This week’s Feature Friday covers just that. Prerequisite API test enables the testing of data-dependent APIs and API processes. To learn more we interviewed Daniel and Steve on the Qyrus team:
Tell us more about the prerequisite API testing feature offered by Qyrus, its use cases, and impact on testing and QA processes?
Just like the locks on a door, applications often work the same way especially when they contain sensitive user and organization data. To test or even enter these applications, users require a unique key or token. This is a prominent use case for prerequisite API tests. Simply setup the prerequisite API and it will execute prior to the API test, providing required data to continue the testing process.
More than just security tokens, prerequisite APIs come in handy anytime initialization is required. Often a particular API is dependent upon input data from a different source, most likely another API. In order to truly test the behavior of the data-dependent API, it is nice to completely mimic this behavior. A simple prerequisite API can be used instead of building an API process of two items saving time, but accomplishing the required behavior and data transfer process.
Data-dependent APIs are fundamental in application creation. Therefore, it’s important to gain some knowledge and background on how these use cases are tested today. So, we asked:
Does the same or similar functionality exist without Qyrus, and how do competitors address similar problems?
Other competitors often require extensive set up, usually utilizing code, to run the prerequisite API, enable data transfer, and trigger the accompanying API test. Though, at the heart of it, the process boils down to calling concurrent API tests, Qyrus simplifies script building and management, mitigates coding requirements, and enables easy environment setup and dynamic data transfer all in one intuitive feature.
Prerequisite APIs on Qyrus differ from our competitors because we provide rich reporting including pass and fail indicators, execution time, and the response headers and body. Furthermore, we offer the ability to dynamically use the responses, building them into dynamic variables that can be implemented as desired across test scripts in the project.
What is the overall impact on the testing process when using prerequisite API testing with Qyrus?
We no longer need to manually enter in pre-request credentials for every pre-request API call. With the prerequisite API feature, the tester enters the pre-request credentials once and the prerequisite API will always run before a request execution takes place.
Additionally, building these interdependent tests could be a little complicated, as the asynchronous behavior of APIs can be conceptually difficult for newer developers to understand. This feature makes testing easier by eliminating the coding barrier required to build these scripts.
Furthermore, a user is able to dynamically use the response body from the prerequisite API into the request execution. In terms of data-dependent API testing, this is a simple, smart, and comprehensive option.
Prerequisite API test provides a lot of utility to users, that’s for sure. Newer developers have less of a hurdle to jump over, as just mentioned. The leap forward cannot be understated. However, does this mean that API testing will no longer be dependent on those with a high level of programming knowledge?
How might prerequisite API testing help testers, developers, and business technologists? What value can this feature bring?
A great question, we find a handful of personas are able to use this feature to test required data-dependent APIs. Testers use this feature to enable an efficient and high-level data transfer process. To be specific, testers build out comprehensive pre-requisite API tests across complex use cases through simple form filling functionality. They can quickly set required data as dynamic variables and implement them directly into the API test for steadfast test building, execution, and data transfer processes. Testers often use this feature to speed up the testing process of production-level APIs.
That’s correct. Furthermore, we find developers using this feature to establish API functionality during development. Creating prerequisite APIs allows for the mapping and pre-development of API processes. Given the capability through pre-requisite API testing, developers can pre-determine requirements and design their APIs to target specific use cases. Upon creation a prerequisites API test can be created and conducted to validate the functionality of both the APIs and data transfer process.
Also, the codeless nature of prerequisite API testing makes it easy for business analysts to build and execute prerequisite API tests. In fact, this feature could help provide more domain knowledge for the business technologist. With form filling functionality, business analysts could further understand the interdependent relationships between the APIs created by the business.
A unique feature for all personas within testing teams, we felt the need to further implore its usefulness to testing as a whole:
How do you see CI pipelines impacting day-to-day operations across organization?
The main objective for prerequisite API testing is to provide a functional solution to data-driven API tests where requirements are contained in a logical fashion without removing the modularity of the API tests.
Exactly, you can run functional tests on the prerequisite API. Once you have confirmed that it is working, you can then apply the same process across all APIs. Also, after a Prerequisite API is created and executed, a user is able to dynamically reuse the response body across the entire API project.
And with a bright future roadmap the prerequisite API feature aims to allow users to add logic or code snippets to the prerequisite request. This can be useful if a request header expects a unique and specific input.
That concludes this week’s Feature Friday! As the week concludes, let’s all take a breath of fresh air in anticipation for even better days ahead. Take a walk, stop and smell the flowers, maybe have a picnic. Whatever it might be, we hope everyone enjoys the coming Spring!