http-diff
CLI tool to verify consistency across web server versions. Ideal for large-scale refactors, sanity tests and maintaining data integrity across versions.
Archives of precompiled binaries for http-diff are available for macOS and Linux on every release.
Dual-licensed under MIT or the UNLICENSE.

The tool works by looking at the configuration file that can be specified by --configuration argument.
http-diff --configuration=./configuration.json
./configuration.json- is the default value for this argument so it can be omitted.
Config example:
this config will be translated to following:
-
GETrequest will be issued tohttp://domain-a.com/healthand response be compared to response ofGET http://stage.domain-a.com/health. -
Next endpoint
/api/v1/users/<userId>has variable defined in it -<userId>. Anything within the brackets considered a variable name. In this case -userId. Variable then is looked up in the global variables property. In this caseuserIdhas two values:123and444. This will be mapped to following requests:GET http://domain-a.com/users/123and compared with response fromGET http://stage.domain-a.com/users/123.GET http://domain-a.com/users/444and compared withGET http://stage.domain-a.com/users/444.
All configuration options can be found here.
Installation
Archives are available on every release as well as .deb files for Linux.
Autocomplete for arguments and man pages are included.
(brew tap) Apple & Linux
Tap the repository by running this command:
and install the package:
.deb file for Linux
Download .deb file from latest release and install it using one of the commands:
or
Developing
cargo run- for developmentcargo test- to run testscargo build -r- to build in release mode