Install latest/stable of HTTP File Runner
Ubuntu 16.04 or later?
Make sure snap support is enabled in your Desktop store.
A command-line tool that parses .http
files and executes HTTP requests with colored output and detailed reporting.
Features
.http
files--discover
)--verbose
) for detailed request/response information--log
) to save output for analysisUsage
# Run a single .http file
httprunner myfile.http
# Run with verbose output
httprunner myfile.http --verbose
# Run multiple files
httprunner file1.http file2.http
# Discover and run all .http files recursively
httprunner --discover
# Use environment variables
httprunner myfile.http --env production
# Show version information
httprunner --version
.http File Format
# Comments start with #
# Basic GET request
GET https://api.github.com/users/octocat
# Request with headers
GET https://httpbin.org/headers
User-Agent: HttpRunner/1.0
Accept: application/json
# POST request with body
POST https://httpbin.org/post
Content-Type: application/json
{
"name": "test",
"value": 123
}
Variables
Define variables using @VariableName=Value
syntax and reference them with {{variable_name}}
:
@hostname=localhost
@port=8080
GET https://{{hostname}}:{{port}}/api/users
Authorization: Bearer {{token}}
Variables can reference other variables:
@baseUrl=https://{{hostname}}:{{port}}
GET {{baseUrl}}/api/search
Environment Files
Create http-client.env.json
for environment-specific variables:
{
"dev": {
"HostAddress": "https://localhost:44320",
"ApiKey": "dev-api-key-123"
},
"prod": {
"HostAddress": "https://contoso.com",
"ApiKey": "prod-api-key-789"
}
}
Use with: httprunner myfile.http --env dev
Response Assertions
Validate responses with assertion keywords:
GET https://httpbin.org/status/200
EXPECTED_RESPONSE_STATUS 200
EXPECTED_RESPONSE_BODY "success"
EXPECTED_RESPONSE_HEADERS "Content-Type: application/json"
Output Features
You are about to open
Do you wish to proceed?
Thank you for your report. Information you provided will help us investigate further.
There was an error while sending your report. Please try again later.
Generate an embeddable card to be shared on external websites.
Choose your Linux distribution to get detailed installation instructions. If yours is not shown, get more details on the installing snapd documentation.