• Stars
    star
    134
  • Rank 270,967 (Top 6 %)
  • Language
    Java
  • License
    MIT License
  • Created over 8 years ago
  • Updated 6 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A group of templated API test frameworks based upon this series: http://www.mwtestconsultancy.co.uk/category/api-web-service-testing/

api-framework

The frameworks all have the same structure that is based upon the tutorial series I wrote last year on how to build an automated API test framework. The key to these templates is to demonstrate a way of structuring your API test framework regardless of what tools or languages that are used and is loosely based upon the principles of Page object architecture used for WebDriver. The idea being that the structure will increase readability, reduce maintenance and prevent brittle tests from appearing.

The framework contains three areas:

  • Tests - Surprisingly where the tests themselves are stored. The tests will call functions from the API and Payload areas of the framework and be responsible for asserting responses.
  • API - All of the HTTP requests that you want to make are stored here. They are grouped based on the resource you are calling so if there are two resources called Booking and Auth then we create two classes named Booking and Auth. Each function is tied to an individual request that can be called multiple times. This means if the request changes it requires a single change to propagate through the framework.
  • Payloads - Payloads that are required for requests and responses are stored in this area. The idea is similar to the API area in that one class is responsible for one payload that may be called multiple times. Again, this means if the payload changes it requires a single change to propagate through the framework.

Setup

Each framework has been setup using their respective package manager and there is an assumption you know how to use it. Simply use the package manager in each to pull down dependencies to get running.

All frameworks have been designed to run tests against https://restful-booker.herokuapp.com/. If you would like to play with the code locally you can find it here: https://github.com/mwinteringham/restful-booker

More Repositories

1

restful-booker

A free to use Web API for practising API testing on
JavaScript
144
star
2

restful-booker-platform

A SaaS platform used for various test automation training
Java
124
star
3

wiremock-chrome-extension

A simple chrome extension for Wiremock
JavaScript
21
star
4

selenium-to-restassured

Easily share Selenium WebDriver cookies with Rest Assured back and forth with this Java library
Java
20
star
5

api-strategy-book-resources

This repository provides supporting examples for the book API Testing strategies
Java
17
star
6

llm-prompts-for-testing

A collection of LLM prompts to be used to help testing activities
11
star
7

generative-ai-and-testing

Repository containing additional material for the book AI Assisted Testing In Action
Java
8
star
8

api-webdriver-harmony

Supporting code for REST APIs and WebDriver: In Perfect Harmony by Mark Winteringham
Java
7
star
9

approval-testing-koans

Exercises to practise approval testing techniques
Java
4
star
10

rest-assured-example

A companion repository to the Rest-Assured course on http://automationintesting.com/restassured/course/
Java
4
star
11

state-talk

Repository of example code for my managing state talk
Java
3
star
12

approval-testing-app

Simple API for practising approval testing against
Java
2
star
13

k-cards-online

An online version of the facilitation tool K-Cards
Java
1
star
14

pairing-exercise-shicky

JavaScript
1
star
15

monitor-tutorial

Runable app for monitoring tutorial
JavaScript
1
star
16

WebDriverBeyondChecks

The source code for our tutorial.
Java
1
star
17

simple-api-monitor

Code to build an incredibly basic API monitor for Testers
JavaScript
1
star