The repository contains a basic CRUD API written in GoLang. This project was aimed to perform blackbox testing on this API.
The following CRUD operations are been added:
- Create - createRoll.go
- Read - getRoll.go and getRolls.go
- Update - updateRoll.go
- Delete - deleteRoll.go
Creates a new item in the database.
Fetch information for a particular item present in the database.
Fetch information for all the itmes present in the database.
Update the information for a particular item present in the database.
Delete the information and item itself from the database.
I have used the API to perform CRUD operations on "CLIENT" dataset and hence renamed them as follows:
NOTE: For this project I have used the local database itself because the goal is to perform the BlackBox Testing on this API. So the main focus is on testing here.
The variable "clients" is a slice and is initialized to store the database in main.go file.
For testing I have built a Static Design Documentation for Test Cases "Static_Design.pdf".
Following the Static design documenation various test cases are build. Some of them are stored in "Test Cases for API Testing - Sheet1.pdf". In the sheet the red color denotes the failed test case and the green one is the updated version of the failed test case.
The testing tool used for API testing is POSTMAN. It is used for both manual and automated API testing.
To perform MANUAL testing refer to "Test Cases for API Testing - Sheet1.pdf" for pre-build test cases and "Static_Design.pdf" to build new test cases.
To perform AUTOMATED testing use the following scripts in postman.
The test script for GetClients is "getClientsTestScript.js".
The test script for GetClient is "getClientTestScript.js".
The test script for CreateClient is "createClientTestScript.js".
The test script for UpdateClient is "updateClientTestScript.js".
The test script for DeleteClient is "deleteClientTestScript.js".