https://github.com/siddik-1997/random-user-api-performance-test
This repository contains a performance testing project for a Random system. The tests include a set of random user scenarios designed to stress the API and measure its behavior under various conditions as well as load testing to validate the API's behavior under heavy load. The results of the tests are documented in an excel sheet.
https://github.com/siddik-1997/random-user-api-performance-test
load-testing performance-testing rest-api
Last synced: 5 months ago
JSON representation
This repository contains a performance testing project for a Random system. The tests include a set of random user scenarios designed to stress the API and measure its behavior under various conditions as well as load testing to validate the API's behavior under heavy load. The results of the tests are documented in an excel sheet.
- Host: GitHub
- URL: https://github.com/siddik-1997/random-user-api-performance-test
- Owner: Siddik-1997
- Created: 2023-01-29T12:44:39.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-01-29T20:56:40.000Z (over 3 years ago)
- Last Synced: 2025-07-27T05:27:46.727Z (11 months ago)
- Topics: load-testing, performance-testing, rest-api
- Homepage:
- Size: 11.7 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Random-User-API-Performance-Test
## What is Performance Testing:
**Performance Testing is defined as a type of software testing to ensure that software applications will perform well under their expected workload.**
- It focuses on certain factors of a Software Program such as:
- **Speed** – It Checks whether the response of the application is fast.
- **Scalability** – It determines the maximum user load.
- **Stability** – It checks if the application is stable under varying loads.
## Technology used: Apache JMeter
**I used it for these characteristics:**
- **Open source application** – Apache JMeter is an openly available free tool & it facilitates users or developers to use the code for other development or modification purpose.
- **Platform independent** – It can run on any platform & also it is capable enough to check the load & performance of any server requests.
- **User friendly GUI** – Its user-friendly, simple & easy to understand.
- **Installation** – It’s easy to install on different OS.
- **Record & Run**: JMeter provides the facility to record the steps by using Blaze master add-on & run with any number of threads & listeners.
## Server URL:
- I used this server for Performance Test.
- Link: https://random-data-api.com/api/v2/users
## What I have done?
- I have done performance testing including **Load Testing** and **Stress Testing**.
- **Load Testing:** This testing is used to check the extreme load of a system that can be aimed to handle.
I started with 834 requests in 300 seconds and finally I executed with 4167 requests in 1500 seconds. I got the expected TPS (2.7) for every test iteration.

- **Stress Test:** This test tries to break the system by crushing its resources.
I checked it in 25 minutes (1500 seconds) considreing 4167, 4500, 4700, 5000 requests. This server successfully run with these requests except 5000 requests in 1500 seconds. It shows an error 1% that is called as bottleneck point.

## Report:
- Report file is available in this repository (resource folder).
- Excel sheet has two tabs: one is for Load test and another one for Stress test.