Package: bambo
:bamboo: Bamboo - HTTP(S) Load TesterWelcome toBamboo, a lightweight and efficient tool for performing load testing on your HTTP and HTTPS services. This Python-based command line utility assists in bombarding your web applications with requests, helping you gauge performance under stress.FeaturesCustom number of requestsConcurrent connections supportMultiple URLs testing through file inputCustom HTTP methods (GET, POST, PUT, DELETE, etc.)Data payload support for testing APIsCustom headers for each requestOptional SSL certificate verificationDetailed summary report using PrettyTableAbility to set timeouts for requestsAbility to set delay between requestMonitors a list of websites too just like FreshPingDirect Installation (Pypi)You can installBambodirectly from PyPI:pipinstallbamboUsage as a Library# example.pyfrombamboimportHTTPLoadTestertester=HTTPLoadTester(['http://example.com'],5,2)# Start the test.tester.run()results=tester.results
print(results)Usage:  bambo <--parameters>bambo-u"https://example.com"Find more details about the package here:Bambo on PyPIRequirementsPython 3.10 or higherPoetry (can be installed via curl)An internet connectionTo install Poetry, run the following command in your terminal:curl-sSLhttps://install.python-poetry.org|python3-Source InstallationBefore running the tool, ensure you have Python installed on your system. You can then install the required packages using poetry:poetryinstall
poetryshellUsageTo use Bamboo, simply invoke the script from the command line with the desired options.pythonbambo/cli.py<--parameters>Basic ExampleTest a single URL with the default number of requests (5):pythonbambo/cli.py-u"https://example.com"orbambo -u "https://example.com"With Custom Number of RequestsSpecify the number of requests to send:pythonbambo/cli.py-u"https://example.com"-n100Concurrent RequestsSet the number of concurrent requests:pythonbambo/cli.py-u"https://example.com"-n100-c10Testing Multiple URLs from FileYou can test multiple URLs by providing a file (one URL per line):pythonbambo/cli.py-furls.txtSetting Custom HeadersInclude custom headers with each request:pythonbambo/cli.py-u"https://example.com"--headers"Authorization:Bearer YOUR_TOKEN""Content-Type:application/json"Using Different HTTP Methods and Data PayloadUse different HTTP methods and send data:pythonbambo/cli.py-u"https://api.example.com/data"-mPOST--data'{"key":"value"}'DebuggingEnable debug output to get more details:pythonbambo/cli.py-u"https://example.com"--debugMonitoringEnable site monitoring to check website health:pythonbambo/cli.py-u"https://example.com"--monitorParameters DetailsHere's a list of all parameters you can use:ParameterDescription-u, --urlURL to test (required if no file is provided)-f, --fileFile containing URLs to test (required if no URL is provided)-n, --num-requestsNumber of requests to make (default is 5)-c, --num-concurrentNumber of concurrent requests (default is 1)-d, --delayDelay between requests in seconds-t, --timeoutTimeout for each requests in seconds-m, --methodHTTP method to use (default is GET)--dataData to send with the request--headersCustom HTTP headers to set, format: key:value--no-verifyDisable SSL certificate verification--debugEnable DEBUG mode--monitorEnable website monitoringContributionFeel free to fork this repository and contribute to the development of Bamboo! If you find bugs or would like to suggest features, please create an issue in the repository.LicenseBamboo is released under the MIT License. Check out the LICENSE file for more information.Enjoy testing your applications withBamboo! 🚀