A general-purpose automated testing tool to evaluate the performance and reliability of web apps, APIs, and bots.
It performs:
- β Load Testing
- β Failure Injection
- β Rate-Limit Testing
- β Long-Run Stability Testing
And logs:
- Response times
- CPU and RAM usage
- Success/failure stats
With automatic output to:
- π
CSV
- π
PDF graphs
- π
SQLite database
- π Flexible input for any URL (API, web app, bot)
- π£ Simulates real-world load and failure conditions
- π Tracks performance over time
- π§ Analyzes results per test type
- π€ Outputs PDF reports and CSV summaries
Install dependencies from the requirements.txt
:
pip install -r requirements.txt
python universal_tester.py
You will be prompted to:
- Enter one or more target URLs (comma-separated)
- Select which tests to run (Load, Rate-Limit, etc.)
File | Description |
---|---|
test_results.csv |
Full log of all test runs |
summary_by_test_type.csv |
Summarized results grouped by test type |
test_report.pdf |
Graphs of response time, CPU, RAM |
test_results.db |
SQLite database of test logs (optional) |
- Validate server scalability before deployment
- Monitor performance regressions
- Stress test rate-limiting and failure recovery
- Benchmark server resource impact
requests
β HTTP requestspsutil
β CPU & RAM usagematplotlib
β Graph generationfpdf
β PDF report generationpandas
β Data analysis
Pull requests are welcome! For major changes, please open an issue first to discuss what youβd like to change.
This project is licensed under the MIT License. See LICENSE
for details.