CheckOps
Schemathesis
Schemathesis is an MIT-licensed property-based API testing tool that generates inputs from OpenAPI, GraphQL and gRPC schemas, chains stateful workflows and finds 500s, schema violations and validation gaps.
Latest public signals
Not refreshed yet. Refresh reads the public site and, when the entry has a GitHub repository, the latest release.
Introduction
Schemathesis tests OpenAPI, GraphQL and gRPC APIs by generating inputs from your schema, adapting to server responses and chaining operations into realistic workflows. Its tagline is “Catch API bugs before your users do”. The project is MIT-licensed with about 3,800 GitHub stars and active development.
It is property-based testing for APIs: instead of hand-writing example requests, you let Schemathesis explore the input space that your schema allows, plus edge cases, and check that responses stay valid.
The README lists the problems it targets: 500 errors on edge-case inputs, schema violations where the API returns different data than documented, validation gaps, and stateful bugs where operations work individually but fail in realistic workflows. Stateful testing infers operation links from your schema.
The README warns that Schemathesis sends real requests that create, change and delete data, so it should run against dev or staging, never production. In the quality loop it sits between API contract testing and security testing.
Features
- Schema-driven generation: Inputs generated from OpenAPI, GraphQL and gRPC definitions.
- Stateful testing: Chains operations such as create, get and delete based on inferred links.
- Response validation: Checks status codes, headers and bodies against the schema.
- Python integration: Use with pytest and unittest.
- CLI: Run without writing code, for example with uvx.
- HTML report:
--report htmlgives a verdict, timeline and failures in one offline page. - gRPC with reflection: Test gRPC services using server reflection.
- Reproducible failures: Minimal failing examples to reproduce bugs.
Pros
- Finds real bugs fast: The README claims real bugs on a demo API in 30 seconds.
- Low effort: Uses the schema you already have.
- Free: MIT.
- Fits CI: CLI and pytest options.
- Active: Commits on the day of review.
Cons
- Needs a good schema: Weak schemas limit results.
- Mutates data: Must target non-production environments.
- Noise from loose specs: Failures may reveal spec issues rather than code bugs.
- Auth setup: Authenticated APIs need configuration.
- Not a load tool: It finds correctness bugs, not throughput limits.
Usage and Links (Example)
Try it against the demo API or your own:
uvx schemathesis run https://example.schemathesis.io/openapi.json
uvx schemathesis run https://your-api.com/openapi.json
From pytest:
import schemathesis
schema = schemathesis.openapi.from_url("https://your-api.com/openapi.json")
@schema.parametrize()
def test_api(case):
case.call_and_validate()
Tips: run it in CI against a disposable staging environment, fix schema mismatches as well as crashes, and keep the HTML report as a build artefact.
Resources:
Pricing
Schemathesis is free and open source under MIT.
Recommended for?
- API teams with OpenAPI or GraphQL schemas wanting automated edge-case coverage.
- QA engineers adding property-based API tests to CI.
- Security-minded teams looking for crashes and validation gaps.
- Not a fit for production monitoring or load testing.
Conclusion
Schemathesis turns an API schema into a powerful bug-finding test suite, including stateful workflows.
Run it against staging, keep schemas accurate, and pair it with contract tests and security scanners.
Alternatives
Other tools on CheckOps that cover similar ground. Open a page, or compare one with Schemathesis side by side.
RRESTlerRESTler is Microsoft Research's MIT-licensed stateful REST API fuzzer that infers dependencies from an OpenAPI spec and exercises cloud services to find security and reliability bugs.Compare with Schemathesis
CCATSCATS is Endava's Apache-2.0 REST API fuzzer and negative-testing tool that generates, runs and reports tests for OpenAPI endpoints with no coding.Compare with Schemathesis
DDreddLanguage-agnostic HTTP API Testing Tool.Compare with Schemathesis
EEvoMasterEvoMaster is an LGPL-3.0 open-source tool that uses AI search techniques to generate system-level tests for REST, GraphQL and RPC APIs, in white-box and black-box modes.Compare with Schemathesis
SStoplight PrismAccelerate API development with realistic mock servers powered by API descriptions.Compare with Schemathesis
PPactFast, easy and reliable testing for integrating web apps, APIs and microservices.Compare with Schemathesis