API Testing
Documentation Home
  • Overview
  • Getting-Started
    • Intro-to-API
    • Table of Contents
  • Project-Setup
    • Certificates
    • Database Configuration
    • Global-&-Environment
    • Integration
    • Pre-requisite-API
    • Project Set Up
  • Functional-Testing
    • API to DB Assertion
    • Advanced Features
    • Build-Test-Script
    • Functional Assertions
    • Functional-Testing
    • 🎀Parameterization
    • Functional Reports
  • API-Process-Testing
    • Advanced Features
    • API Process
    • Getting Started
    • Performance-Testing
      • Performance Testing
  • Advanced-Features
    • Emailing & Downloading Report
    • Execute JavaScript
    • Nova AI Assertions
    • Advanced Reports
    • Xray Integration
  • FAQ
    • FAQs
Powered by GitBook
On this page
  • Contents
  • Introduction to API Process
  • Project Creation
  • Test Suite Creation
  • Creating a New Test Suite
  • Editing a Test Suite
  • Deleting a Test Suite
  • Test Suite Creation
  • Import From Exisiting APIs
  • Import from Swagger JSON or WSDL File
  • Import from Swagger JSON or WSDL Link
  • Import from Postman Collection
  • Manage APIs
  • Assertions in Manage API
  • Create Flow
  • Old Flow
  • New Flow
  • ​
  • Execute API Flow
  • Execute as Functional Test
  • Execute as Performance Test
  • ​
  • Reports
  • Functional Reports
  • Performance Reports
  • Advanced Features for API Process
  • Report Actions
  • Parameterized Case
  1. API-Process-Testing

API Process

PreviousAdvanced FeaturesNextGetting Started

Last updated 1 year ago

API Process Testing involves creating a chain of API’s and passing the response of one API as a request to the next one, running them together and viewing the results of the entire flow.

Contents

Introduction to API Process

The term API Process encapsulates the end-to-end sequence of steps involved in connecting, testing, and validating the functionality and performance of interconnected APIs. This process often includes configuring connection parameters, crafting test scenarios, executing API requests, analyzing responses, and generating relevant reports.

  1. Functional Testing in API Process: During the API process, functional testing ensures that the interconnected APIs correctly exchange data, execute operations, and respond appropriately to various requests.

  2. Performance Testing in API Process: In the context of the API process, performance testing aims to verify that the interconnected APIs can handle a realistic workload without compromising performance.

Project Creation

Test Suite Creation

Creating a New Test Suite

To create a new Test Suite in API Process, follow these steps:

Step-1 : Click on Create Test Suite

Step-2 : Enter Test Suite Name and Description

Step-3 : Click on Create Test Suite

NOTE:

  • The Test Name can have only letters, numbers, and underscores.

  • Module name should not exceed 225 characters


Editing a Test Suite

Step-1 : Click on Edit Test Suite

Step-2 : Enter Test Suite Name and Description

Step-3 : Click on update


Deleting a Test Suite

Step-1 : Click on Delete Test Suite

Step-2 : Click on Yes


Test Suite Creation

Import From Exisiting APIs

Step-1 : Select the Import from Existing APIs option.

Step-2 : Select the necessary API's to be imported.


Import from Swagger JSON or WSDL File

Step-1 : Select Import from Swagger JSON or WSDL File .

Step-2 : Click on upload.

Step-3 : Select the necessary API's to be imported.


Import from Swagger JSON or WSDL Link

Step 1 : Click on Import from Swagger JSON or WSDL Link option.

Step 2 : Enter the swagger JSON or WSDL Link.

Step 3 : Click on GetAPI's.

Step 4 : Select the necessary API's to be imported.


Import from Postman Collection

Step-1 : Select the Import from Postman Collection option.

Step-2 : Upload your Postman Collection file using the provided upload functionality.

Step-3 : Select the necessary API's to be imported.


Manage APIs

Step-1 : Navigate to the Manage API's

Step-2 : Locate the API you want to edit and click on it to open its details.

Step-3 : Look for the Edit Option.

Step-4 : Make the necessary changes to the API details, such as endpoint URLs, headers, and parameters.

Step-5 : After making all necessary edits, save the changes.

Step-6 : Similarly, find the API you want to delete and select it.

Step-7 : Look for the "Delete" option and confirm your decision.



Assertions in Manage API


Create Flow

Old Flow

Create Flow Guide

This Flows enable you to sequence test scripts and establish connections between them to model complex API processes.

Adding APIs to the Old Flow

Step-1 : Select the Existing API to be added the flow.

Step-2 : On the top we have toggle to switch between new flow and old flow by default it is old flow

Step-3 : select the API's to added to the canvas


Saving Connections

Step-1 : After adding the API's to the canvas then click on Add Connection will help to configure the connection.

Step-2 : Choose the target API's that the current API's needs to connect.

Step-3 : Click Save to save the configuration.


Establishing Connection Configuration

Step-1 : Once connections are saved, navigate to the next page in the flow creation process.

Step-2 : Here, you'll see the list of connections you've created.

Step-3 : Click on a connection to configure its behavior:

  • Set up the conditions for the connection to activate.

  • Define parameter type to pass from one API to another.

  • Linking APIs involves using extracted data from one API's response to enhance another API's request.

  • This is achieved by specifying parameter types (query, path, header, request body, or request key) and their corresponding JSON paths.

  • Query Parameter: Extract data from the first API response using JSON path and pass it as a query parameter in the second API call.

  • Path Parameter: Replace part of the second API's URL path with data extracted from the first API using JSON path.

  • Header Parameter: Take data from the first API response and use it as a header in the second API request.

  • Request Body: Utilize the entire JSON object extracted from the first API response as the request body in the second API call.

  • Request Key: Authenticate both APIs using a token extracted from the first API's response, ensuring secure communication.

    Path Extraction


New Flow

Adding APIs to the New Flow

Step-1 : we will have to rebuild the test in case you choose to switch to new experience

Step-2 : Select confirm to enter new flow

Step-3 : Select the API's to added to the canvas.


Saving New Connections

Step-1 : Drag and drop and API's to the canvas.

Step-2 : Choose the target API's that the current API's needs to connect.

Step-3 : Click Save to save the configuration.


Establishing New Connection Configuration

Step-1: Click on a connection to configure its behavior:

  • Set up the conditions for the connection to activate.

  • Define parameter type to pass from one API to another.

  • We do support multiple parameter type like query,path,request body,request key.

  • By default it will be none.

  • JSON path is represented as "$json" same syntax to be followed for entering jsonpath.

Execute API Flow

Execute as Functional Test

Step-1 : After updating the connection configuration the click on run icon.

Step-2 : In the dropdown menu select the enivronment.

Step-3 : In the dropdown menu labeled Run As, choose Functional.

Step-4 : Click on the Execute Test button.

Step-5 : It will be navigated to reports page.


Execute as Performance Test

Step-1 : After updating the connection configuration the click on run icon.

Step-2 : In the dropdown menu select the enivronment.

Step-3 : In the dropdown menu labeled Run As, choose Performance.

Step-4 : select number of threads.

Step-5 : select Thresold response time.

Step-6 : Click on the "Execute Test" button.

step-7 : It will be navigated to reports page.

Reports

Functional Reports

Below is an explanation of the data fields present in the functional test report

Field
Description

Status

The execution status of the test case (e.g., Pass, Fail).

Body_Assertion

Assertion status for body content validation.

DataHandler

Data handling information or transformations applied.

StatusCode

The HTTP status code returned by the API endpoint.

url

The URL of the API endpoint that was tested.

TestCase_Name

The name or identifier of the test case.

jsonPath_Assertion

Assertion status for JSONPath validations.

Header_Assertion

Assertion status for header content validation.

ResponseTime

The time taken for the API request and response.

Response_Body

The response body received from the API endpoint.

MethodName

The HTTP method used in the API request (e.g., GET, POST).

Response_Headers

The headers included in the API response.


Performance Reports

In the performance test report, you will find three key graphs that provide insights into the performance of the API flow under different thread loads.

Response Time of API Flow vs. Thread Number

This graph illustrates the relationship between the response time of the API flow and the number of concurrent threads. It helps you understand how the system's performance changes as the thread load increases. A higher thread count may result in increased response times, indicating potential performance bottlenecks.


Response Time per API vs. Thread Number

In this graph, you can see the response time of individual APIs within the flow plotted against the number of threads. This allows you to pinpoint APIs that might experience performance degradation under heavy loads. Identifying APIs with rising response times can help in optimizing their performance.


Status Code per API vs. Thread Number

The third graph showcases the distribution of status codes (e.g., 200 OK, 500 Internal Server Error) for each API across varying thread numbers. Analyzing this graph can provide insights into how the system responds to different thread loads. Unusual patterns, such as an increase in error codes, can indicate issues affecting specific APIs.


Advanced Features for API Process

Report Actions

Parameterized Case


​

​

​

​

Click here for instructions on how to Create Project
Click Here for instructions on how to perform Assertions in Manage API's.
Quick Go through of API Process
API Process
Introduction to API Process
Project Creation
Test Suite Creation
Creating a New Test Suite
Editing a Test Suite
Deleting a Test Suite
Test Suite Creation
Import From Exisiting APIs
Import from Swagger JSON or WSDL File
Import from Swagger JSON or WSDL Link
Import from Postman Collection
Manage APIs
Assertions in Manage API
Create Flow
Old Flow
Create Flow Guide
Adding APIs to the Old Flow
Saving Connections
Establishing Connection Configuration
New Flow
Adding APIs to the New Flow
Saving New Connections
Establishing New Connection Configuration
Execute API Flow
Execute as Functional Test
Execute as Performance Test
Reports
Functional Reports
Performance Reports
Response Time of API Flow vs. Thread Number
Response Time per API vs. Thread Number
Status Code per API vs. Thread Number
Advanced Features for API Process
Report Actions
Parameterized Case
Click Here for instructions on how to perform Assertions in Manage API's.
Report Actions
API Process Parameterized Case
image
gif
image
gif
image
gif
image
gif
image
gif
image
gif
image
gif
image
gif
image
gif
image
gif
image
gif
image
image
gif
image
image
image
image
gif
image
gif