This project is a general-purpose HTTP load-testing and benchmarking tool. It includes a frontend interface for visualizing load test results and a backend API for conducting the load tests.
✔️: Demo video available: A demo video and installation guide is available to help you set up and use. Watch it here: Demo and Video Guide
- Reports latencies and error rates
- Supports a
--qpsflag to generate requests at a given fixed QPS (queries per second) - Real-time graphical representation of latencies and error rates
- Dockerized for easy deployment
- Docker
- Docker Compose
git clone https://github.com/lasopablo/HTTP-load-testing.git
cd http_load_tester
⚠️ Installation Guide Available: A video installation guide is available to help you set up. Watch it here: Installation Video Guide
Pull the Docker images:
docker pull pablaso/http_load_tester_frontend:frontend_ready docker pull pablaso/http_load_tester_backend:frontend_ready
Create a docker-compose.yml file in the project root directory with the following content:
version: '3.8'services: backend: image: pablaso/http_load_tester_backend:frontend_readyports: - "8000:8000"frontend: image: pablaso/http_load_tester_frontend:frontend_readyports: - "3000:80"
Run Docker Compose to start the services:
docker-compose up
Access the frontend interface:
Open your browser and navigate to
http://localhost:3000.
Here are some examples of how the application looks and works. Note that "dark mode" was on.
If you prefer to run the project locally without Docker, follow these steps:
Backend Setup:
Navigate to the
backenddirectory:cd backendCreate a virtual environment and activate it:
python -m venv venv source venv/bin/activateInstall the required packages:
pip install fastapi uvicorn requests
Run the backend server:
uvicorn main:app --host 0.0.0.0 --port 8000
Frontend Setup:
Navigate to the
frontenddirectory:cd frontendInstall the required packages:
npm install
Start the frontend server:
npm start
Open your browser and navigate to
http://localhost:3000.

