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.
- 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 <url> [-a <auth>] [-C <cookies>] [-M <method>] -c <concurrency> -n <total-request> [-H <headers>] [-f <file>] [-d <data>]
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
Adding a header is simple as adding just a option with format of <header_name>=<header_value>
for example content-type=application/json
. We can add any number of headers.
$ bust -n 20 -c 5 https://www.google.com -H auth=<auth-token> -H user-agent=<user-agent-name>
Adding custom method is done by using -M
option. All the HTTP method are supported. Eg. POST , PUT etc.
$ bust -n 20 -c 5 https://www.google.com -M POST -H auth=<auth-token> -H user-agent=<user-agent-name>
Upload file with request using multipart/formdata header. Eg. -f <field-name>=<file-path>
.
$ 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.
Body is passed using -d
in form of string. Eg . -d {"name":"bust"}
$ bust -n 20 -c 5 https://www.google.com -M POST -H content-type=application/json -d \{\"name\":\"bust\"\}
Adding cookie is simple using -C
option which is repeatable. Syntax -C <cookie>
.
$ bust -n 20 -c 5 https://www.google.com -M POST -C auth=76rtitutuit