uboa is a HTTP load testing tool designed to help you evaluate the performance and reliability of your web applications under various levels of concurrent traffic.
Grab a pre-built binary from the GitHub Releases page or run the following command to install the latest version:
curl -s https://raw.githubusercontent.com/oddegen/uboa/main/scripts/install.sh | bashAlternatively you can build it from source,
To build uboa from source, you'll need to have Go installed on your system. Here are the steps:
- Clone the repository:
git clone https://github.com/oddegen/uboa.git - Change into the repository directory:
cd uboa - Run
go buildto build the binary - Run
./uboato run the tool
To use uboa, simply run the command uboa followed by the required flags and options.
-uor--url: The target URL to test (required)
-Hor--headers: Custom HTTP headers (format: key1:value1,key2:value2)-dor--body: Request body for POST, PUT, or PATCH requests-jor--json: Output results in JSON format--htmlor--html-output: Output results in HTML format-Sor--skip-preview: Skip automatic preview of results-oor--output: File path for saving the output (default:{yyyy-mm-dd}_{method}_uboa-result)-cor--concurrency: Number of concurrent clients (default: 5)-nor--requests: Total number of requests to send (default: 100)-Tor--timeout: HTTP client timeout in seconds (default: 5)-kor--keep-alive: Enable HTTP keep-alive connections-ror--max-retries: Maximum allowed retry before erroring (default: 3)-ior--insecure: Use this flag to skip SSL verification-caor--ca: CA certificate to verify peer against-certor--cert: Client authentication certificate-keyor--key: Client authentication key
Here's an example of how to use uboa:
uboa -url https://google.com -method GET -concurrency 10 -requests 1000This command will send 1000 GET requests to https://google.com using 10 concurrent clients.
uboa outputs the results of the load testing in a human-readable format. You can customize the output format using the -json or -html flags.
Here is an example of the rendered HTML output:
uboa is an open-source project and welcomes contributions from the community. If you'd like to contribute, please refer to the CONTRIBUTING.md file for more information.
uboa is licensed under the MIT License. See the LICENSE.md file for more information.

