Capter is a lightweight end-to-end testing tool for APIs. It's language agnostic and can test APIs written in any language (Node.js, Go etc).
- 🧑💻 Write tests in YAML
- 🔎 Run the same tests locally, in CI, or as a cron job to monitor your live APIs
- 🏃♂️ Takes less than a minute to get started
Create a workflow file in a .capter
folder:
# .capter/products.yml
name: products
steps:
- name: fetch all products
id: products
url: ${{ env.URL }}/api/products
assertions:
- !expect status to_equal 200
- !expect body to_be_array
- name: fetch first product
url: ${{ env.URL }}/api/posts/${{ products.response.body.0.id }}
assertions:
- !expect body.id to_equal ${{ products.response.body.0.id }}
Then run the CLI:
URL=http://localhost:3000 capter test
Follow the instructions in the documentation to get started:
The Capter CLI is provided under the MIT License. See LICENSE for details.