Skip to content

oddegen/uboa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

uboa: A Local First HTTP Load Testing CLI Tool

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.

Installation

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 | bash

Alternatively 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:

  1. Clone the repository: git clone https://github.com/oddegen/uboa.git
  2. Change into the repository directory: cd uboa
  3. Run go build to build the binary
  4. Run ./uboa to run the tool

Getting Started

To use uboa, simply run the command uboa followed by the required flags and options.

Flags and Options

Required Flags

  • -u or --url: The target URL to test (required)

Optional Flags

  • -H or --headers: Custom HTTP headers (format: key1:value1,key2:value2)
  • -d or --body: Request body for POST, PUT, or PATCH requests
  • -j or --json: Output results in JSON format
  • --html or --html-output: Output results in HTML format
  • -S or --skip-preview: Skip automatic preview of results
  • -o or --output: File path for saving the output (default: {yyyy-mm-dd}_{method}_uboa-result)
  • -c or --concurrency: Number of concurrent clients (default: 5)
  • -n or --requests: Total number of requests to send (default: 100)
  • -T or --timeout: HTTP client timeout in seconds (default: 5)
  • -k or --keep-alive: Enable HTTP keep-alive connections
  • -r or --max-retries: Maximum allowed retry before erroring (default: 3)
  • -i or --insecure: Use this flag to skip SSL verification
  • -ca or --ca: CA certificate to verify peer against
  • -cert or --cert: Client authentication certificate
  • -key or --key: Client authentication key

Example Usage

Here's an example of how to use uboa:

uboa -url https://google.com -method GET -concurrency 10 -requests 1000

This command will send 1000 GET requests to https://google.com using 10 concurrent clients.

Output

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:

screenshot_1 screenshot_2

Contributing

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.

License

uboa is licensed under the MIT License. See the LICENSE.md file for more information.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published