1.0.0 • Published 2 years ago
zerxes v1.0.0
Zerxes
Zerxes is a CLI tool that helps with automation testing of HTTP redirects.
Usage
From any directory, you can run:
$ npx @zerxes [args]
Options
You can specify options through the command line (CLI).
CLI | Description | Default Value | Example |
---|---|---|---|
in | Input file with valid test cases | --in=./test-cases.xlsx | |
out | Output file with test results | --out=./output.xlsx | |
maxHops | Maximum HTTP hops before failure | 10 | --maxHops=10 |
concurrency | Maximum concurrent tests | 20 | --concurrency=20 |
Input Formats
Zerxes currently currently only supports CSV and XLSX files for input.
XLSX
When receiving an XLSX file as input, the input file should be structured as follows (without headers):
- Column 1: The URL to start from (ex:
http://google.com
) - Column 2: The expected URL to be redirected to (ex:
http://www.google.com
) - Column 3: The maximum hop count for the redirect (ex:
2
). Optional, leave blank to use default value.
Example:
http://google.com | http://www.google.com | |
http://yahoo.com | https://www.yahoo.com | 5 |
CSV
When receiving an CSV file as input, the input file should be structured as follows (without headers):
- Column 1: The URL to start from (ex:
http://google.com
) - Column 2: The expected URL to be redirected to (ex:
http://www.google.com
) - Column 3: The maximum hop count for the redirect (ex:
2
). Optional, leave blank to use default value.
Example:
http://www.google.com,http://www.google.com
http://www.yahoo.com,https://www.yahoo.com,5
Output Formats
Zerxes currently currently only supports CSV and XLSX files for output. Both formats will display the following table:
maxHops | url | expectedRedirect | success | hops |
---|---|---|---|---|
10 | http://google.com | http://www.google.com | TRUE | 1 |
5 | http://yahoo.com | https://www.yahoo.com | TRUE | 1 |
Examples
Call from CLI:
npx zerxes --in=./test/data/test.csv --out=./output.csv --maxHops=5
node index.js --in=./test/data/test.csv --out=./output.csv --maxHops=5
Install globally and run:
npm i -g zerxes
zerxes --in=./test/data/test.csv --out=./output.csv --maxHops=5