https://github.com/anshulrgoyal/bust
Load Testing tool.
https://github.com/anshulrgoyal/bust
benchmark-framework cli http https rust server tool
Last synced: 7 months ago
JSON representation
Load Testing tool.
- Host: GitHub
- URL: https://github.com/anshulrgoyal/bust
- Owner: anshulrgoyal
- License: mit
- Created: 2020-04-04T22:06:44.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2022-08-19T20:49:52.000Z (over 3 years ago)
- Last Synced: 2025-05-05T16:02:22.243Z (9 months ago)
- Topics: benchmark-framework, cli, http, https, rust, server, tool
- Language: Rust
- Homepage:
- Size: 67.4 KB
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README

# bust
It is a simple server bench marking tool it is not a scientific tool for bench marking it provide a very crude idea of the load management capability of your server.
# Highlights
- It support both **HTTP** and **HTTPS** .
- Custom method can be added to request using `-M` option .
- Any header can be added to request using `-H` option and repeation is allowed .
- File upload is also supported throught `-f` flag with mutlipart/formdata content-type header.
- Body can be passed to supported type of request using `-d` flag .
- Number of concurrent request is required. Can be passed with `-c` option.
- Total number of request should also be passed using `-n` flag.
- Auth details can be passed using `-a` option.
```
Usage: bust [-a ] [-C ] [-M ] -c -n [-H ] [-f ] [-d ]
A tool for Stress Testing
Options:
-a, --auth pass username and password in form of username:password
-C, --cookies provide cookie for the request
-M, --method custom http method
-c, --concurrency concurrency the number of concurrent request
-n, --total-request
total number of request made
-H, --headers custom header for request
-f, --file file path to upload the file
-d, --data data to be sent in request
--help display usage information
```
## Add Header to Request
Adding a header is simple as adding just a option with format of `=` for example `content-type=application/json` . We can add any number of headers.
```bash
$ bust -n 20 -c 5 https://www.google.com -H auth= -H user-agent=
```
## Add Custom Method for Request
Adding custom method is done by using `-M` option. All the **HTTP** method are supported. Eg. _POST_ , _PUT_ etc.
```bash
$ bust -n 20 -c 5 https://www.google.com -M POST -H auth= -H user-agent=
```
## Add file for upload
Upload file with request using multipart/formdata header. Eg. `-f =` .
```bash
$ bust -n 20 -c 5 https://www.google.com -M POST -f image=./path/to/file
```
where `image` is field-name and `./path/to/file` is path of file.
## Adding Body to request
Body is passed using `-d` in form of string. Eg . -d \{\"name\":\"bust\"\}
```bash
$ bust -n 20 -c 5 https://www.google.com -M POST -H content-type=application/json -d \{\"name\":\"bust\"\}
```
## Adding Cookies to request
Adding cookie is simple using `-C` option which is repeatable. Syntax `-C ` .
```bash
$ bust -n 20 -c 5 https://www.google.com -M POST -C auth=76rtitutuit
```