# Commands
# Request
Command restbeast r
or restbeast request
executes given request name.
Given request example-request {}
defined in a .hcl
file in the current path, running restbeast r example-request
will execute the request.
# --timing
Displays request times and request chain
HTTP/2.0 200 OK
│
├──PATCH https://httpbin.org/patch
│ Total Time: 114 ms
│ Bytes Received: 690 B
│ │
│ ├──POST https://httpbin.org/post
│ │ Total Time: 626 ms
│ │ Bytes Received: 550 B
│ │
│ ├──POST https://httpbin.org/post
│ │ Total Time: 120 ms
│ │ Bytes Received: 542 B
│
├──POST https://httpbin.org/post
│ Total Time: 112 ms
│ Bytes Received: 540 B
# --detailed-timing
Displays detailed request times and request chain
HTTP/2.0 200 OK
│
├──PATCH https://httpbin.org/patch
│ DNS Resolve Time: 0 ms
│ Connection Time: 0 ms
│ First Byte Time: 205 ms
│ Total Time: 206 ms
│ Bytes Received: 707 B
│ │
│ ├──POST https://httpbin.org/post
│ │ DNS Resolve Time: 27 ms
│ │ Connection Time: 212 ms
│ │ TLS Handshake Time: 622 ms
│ │ First Byte Time: 827 ms
│ │ Total Time: 827 ms
│ │ Bytes Received: 552 B
│ │
│ ├──POST https://httpbin.org/post
│ │ DNS Resolve Time: 0 ms
│ │ Connection Time: 0 ms
│ │ First Byte Time: 202 ms
│ │ Total Time: 202 ms
│ │ Bytes Received: 558 B
│
├──POST https://httpbin.org/post
│ DNS Resolve Time: 0 ms
│ Connection Time: 0 ms
│ First Byte Time: 204 ms
│ Total Time: 204 ms
│ Bytes Received: 540 B
--env
Executes command with selected environment definition
env local {}
env live {}
The command below should evaluate given environment.
restbeast request some-request --env live
# -H
or --header
Displays response headers
Example request result with headers
HTTP/2.0 200 OK
Date: Thu, 11 Feb 2021 10:32:25 GMT
Content-Type: application/json
Content-Length: 548
Server: gunicorn/19.9.0
Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: true
# Attack Request
Command restbeast ar
or restbeast attack-request
continuously executes given request (or request chain) N times in defined period.
Example result with default values;
Status 200 response: %78 (47)
Status 400 response: %15 (9)
Status 500 response: %6 (4)
95 Percentile: 1.091473938s
99 Percentile: 1.100081803s
AverageTime: 585.411933ms
# -c
or --count
Sets request count
Defaults to 60.
# -p
or --period
Sets period
Defaults to 60 seconds.
Acceptable duration modifiers are s
, m
, h
Examples:
60s = 60 seconds
10m = 10 minutes
1h = 1 hour
--env
Executes command with selected environment definition
env local {}
env live {}
The command below should evaluate given environment.
restbeast ar some-request --env live
# Test
Command restbeast t
or restbeast test
designed to eval test
blocks.
Executing a test also executes dependant requests (or request chains).
Test command designed to run in continuous integration pipelines.
Successful tests results with exit code 0
or any failure will result exit code 1
.
test get-example {
valid-origin = assertIpv4(request.get-example.body.origin)
valid-host = assertEqual(request.get-example.body.headers.Host, "httpbin.org")
}
The test block example above should result as follows
PASS: valid-host
PASS: valid-origin
2 passes, 0 failures, 2 total.
--env
Executes command with selected environment definition
env local {}
env live {}
The command below should evaluate given environment.
restbeast test some-request --env live
# Help
Command restbeast help
or restbeast -h
or restbeast --help
displays help menu.
# Bug
Command restbeast bug
will open a browser window and navigate to new issue screen in restbeast github repo.
# Version
Command restbeast version
displays restbeast version.
← Installation Features →