MaxSoft — IntelliAPI

Simple, codeless and efficient framework for API Test Automation

Osanda Deshan Nimalarathna
MaxSoft — IntelliAPI

--

Agenda

  • Introduction to API Testing
    - What is an API?
    - What is API Testing?
  • Why should invest time in API testing?
  • What tests should be performed on API Testing?
  • What are the types of defects that API Testing will help remove?
  • API Testing Tools
  • MaxSoft — IntelliAPI Framework
    - Technologies/Frameworks used
    - Supported platforms/languages
    - Advantages
    - Git Source

Introduction to API Testing

What is an API?

An API (Application Programming Interface) is a set of application code, standards, protocols and procedures that can be used as an interface by external software applications or between different layers of the same application (AKA: “Logic Tier” or “Business Layer”).

When creating an application API, we will determine how other systems will interact, communicate and share data with our system in the best and efficient way.

What is API Testing?

API testing is a testing approach that is used to validate that APIs and the integration they should provide actually work as defined at the beginning of the project.

The main activity of this testing approach is to validate the API response or output based on varying test conditions, the API output can be a reference to another API, Different types of data, and Pass/Fail status.

Why should invest time in API testing?

Think about a scenario that you release an API to other programmers with the attention that they will use it as an interface interact with the application, any defect that will affect this basic goal, will resolve an additional development and testing activities (Similar to any other bug found in customer environment) that will affect both the costs and reputation of the company.

Although API’s are usually published for free as an open source code that other developers can use and expand it, there is no way that the market will adopt and use it if it’s not efficient, effective and off course free from any major defects.

What tests should be performed on API Testing?

  1. Test that the API does not have scenarios that it fails to return any response.
  2. Test that the API can be integrated with a corresponding system.
  3. Test that the API can be integrated with a corresponding API’s.
  4. Test the API outcome based on different input condition.
  5. Test different performance aspects of the API.
  6. Test that the API can process a lot of inputs.
  7. Test that the API can handle negative inputs.
  8. Test different security aspects of the API.

What are the types of defects that API Testing will help remove?

  1. Any Security breach in the API that other programmers can use to attack the system.
  2. Performance related defects.
  3. Security related defects.
  4. Errors and failures that are not handled in a graceful way.
  5. Any functional defect related to the API functions.
  6. Unused code, Duplicate functionality or unused flags.

API Testing Tools

  1. Postman
  2. Fiddler
  3. SoapUI

MaxSoft — IntelliAPI

The main reason for developing this framework is to provide an easy way for Technical QA/Developer/Non-technical QA to perform API testing.

Technologies/Frameworks used

  1. Java
  2. Gauge Framework
  3. Rest Assured
  4. Apache POI
  5. Junit
  6. Apache Maven

Supported Platforms

  • Windows
  • Linux
  • Mac OS

Supported Languages

  • Java

Design Diagram

Advantages

  1. Generation of an executable document.
  2. Human readable tests, business language and Mark-down syntax.
  3. Tests can be designed even by a non- technical person.
  4. Ability to validate backend databases.
  5. Generate a HTML report with test details for every test execution.
  6. Parallel execution.
  7. Live execution report.
  8. Automated emails for test execution summary with graphical representations.

Git Source

  • You can clone demo project from here
  • If you haven’t install Gauge Framework in your computer, please read the below article to setup it.
    Installing Gauge

Happy Automation !!!

--

--

Osanda Deshan Nimalarathna
MaxSoft — IntelliAPI

Founder of MaxSoft | RPA Solution Architect | Open-source Contributor | Automation Framework Developer | Technical Specialist