Automated API Testing and Quality Assurance
npm install stepci!Screen Recording 2023-10-04 at 15 43 17
> Note
> We just announced Support Plan for Step CI
> Important
> For users migrating from Postman and Insomnia, see issues #29 and #30 respectively
Step CI is an open-source API Quality Assurance framework
- Language-agnostic. Configure easily using YAML, JSON or JavaScript
- REST, GraphQL, gRPC, tRPC, SOAP. Test different API types in one workflow
- Self-hosted. Test services on your network, locally and CI/CD
- Integrated. Play nicely with others
1. Install the CLI
Using Node.js
```
npm install -g stepci
> Note: Make sure you're using the LTS version of Node.js
Using Homebrew
``
brew install stepci
2. Create example workflow
workflow.yml
`yaml`
version: "1.1"
name: Status Check
env:
host: example.com
tests:
example:
steps:
- name: GET request
http:
url: https://${{env.host}}
method: GET
check:
status: /^20/
> Note: You can also also use JSON format to configure your workflow
3. Run the workflow
``
stepci run workflow.yml
`
PASS example
Tests: 0 failed, 1 passed, 1 total
Steps: 0 failed, 1 passed, 1 total
Time: 0.559s, estimated 1s
Workflow passed after 0.559s
`
Documentation is available on docs.stepci.com
You can find example workflows under examples/
Join our community on Discord and GitHub
As an open-source project, we welcome contributions from the community. If you are experiencing any bugs or want to add some improvements, please feel free to open an issue or pull request
Get Pro-level support with SLA, onboarding, prioritized feature-requests and bugfixes.
By default, the CLI collects anonymous usage data, which includes:
- Unique user ID
- OS Name
- Node Version
- CLI Version
- Command (stepci init, stepci run, stepci generate)
- Environment (Local, Docker, CI/CD)
> Note
> The usage analytics can be disabled by setting STEPCI_DISABLE_ANALYTICS` environment variable
The source code is distributed under Mozilla Public License terms