A postman/postwoman like, web app to test your APIs !
To use PatchGirl, you only need to go to the app page π. However, for a full experience, you will want to run patchgirl-runner on your computer. It acts as a tiny proxy that runs your request (HTTP, SQL,...) from you computer.
Just download the latest binary for linux here and run it:
chmod +x patchgirl-runner-X.Y.Z
./patchgirl-runner-X.Y.Z
Either download and run the mac binary from the release (cf Linux section) or use homebrew:
brew install patchgirl/patchgirl/runner
patchgirl-runner # to run patchgirl-runner
nb: Please note that for recent versions of MacOS, if you use the binary method, MacOS will display an error popup stating that the app hasn't been recognized and so is insecure. To overcome this issue, you'll need to "right-click open" the executable from the finder once!
Windows support is currently on the roadmap.
β
: available
π§: in development
π: in the roadmap
available | feature | description |
---|---|---|
β | sign in via github | save your data with a Github account |
β | environment | Environment helps you save and reuse variables |
β | http request | Create and play http requests |
β | Postgres SQL query | Create and play Postgres SQL queries |
β | scenarios | Create and Play multiple http requests or postgresql queries one after another |
β | pre request script | Play a script right before executing a request (eg: Include timestamp in the request headers, send a random string in the URL parameters,...) |
β | post request script | Play a script right after executing a request (eg: Assign the response result to a variable, assert that the response status is a 200,...) |
β | desktop app (Linux & MacOS only as of today) | Lightweight desktop proxy so you can play a request targeting a local host |
π§ | cross platform desktop application | Make the PatchGirl desktop app available on Windows (currently only available on Linux and MacOS |
π§ | MySql request | Play MySQL queries |
π | websocket | |
π | MongoDB queries | |
π | Kafka queries | |
π | RabbitMQ queries | |
π | Shell/Bash queries | |
π | websocket | |
π | server send events | |
π | API documentation | Generate documentation from a set of requests |
π | Team mode | Share your collections with your team |
π | Keyboard shortcuts |
π’ Scenario of tests
Play multiple requests one after another. This is useful if you want to:
- Automate your development environment db (eg: create many users,...)
- Automate the test of your API (eg: create a user then show it then delete it)
π pre-request script
Run a javascript script right before a request is executed. This is useful if you want to:
- Include timestamp in the request headers
- Send a random string in the URL parameters
π post-request script
Run a javascript script after a request is executed. This is useful if you want to:
- Assert for a response status or body
- Set variables according on the response body
π¦ Desktop app (AKA patchgirl runner)
Install a desktop app so you can use PatchGirl locally. This is needed when you:
- Use PatchGirl without internet access
- Call localhost url
- Need to play any request that is not HTTP (i.e: Postgresql, MySQL,...)
- want faster request execution (no round trips to a remote server, everything is done on your computer)
Please refer to the documentation if you need to build and run PatchGirl locally.
PatchGirl is only built with functional programing languages:
- NixOS for the operating system
- Haskell for the backend API
- Elm for the front end single page app
- Dhall for everything related to configuration