Welcome to Schemathesis.io — the home of effective API testing, simplified.
Focus on building while we ensure your API's reliability.
- 🚀 Start quickly with just an API schema
- 🔍 Identify hard-to-spot errors in complex systems
- 🛡️ Enhance security by uncovering vulnerabilities in your APIs
- 🏗️ Build reliable APIs that foster business growth and user satisfaction
- ⏱️ Save time with effective testing strategies without compromising on depth
- 📈 Scale with Confidence from pet projects to enterprise
- 🔗 Flexible Deployment on your hardware or our cloud
Schemathesis.io combines a SaaS solution with a robust open-source CLI to simplify your API testing and development process. By generating meaningful test data, it helps QA teams save time while ensuring APIs are secure, reliable, and work as intended.
💬 Dmitry Misharov, Principal Quality Engineer at RedHat:
Schemathesis is the best tool for fuzz testing of REST API on the market. We at Red Hat use it for examining our applications in functional and integrations testing levels.
💬 Luděk Nový, Quality Engineer at JetBrains:
The tool is incredible; it handles negative scenario testing much faster than I could in Postman, and without the maintenance burden.
How it works
Here’s a simplified overview of how Schemathesis operates:
- Test Generation: Using the API schema to create a test generator that you can fine-tune to your testing requirements.
- Execution and Adaptation: Sending tests to the API and adapting through statistical models and heuristics to optimize subsequent cases based on responses.
- Analysis and Minimization: Checking responses to identify issues and minimizing test cases to pinpoint the exact problems.
- Stateful Testing: Running multistep tests to assess API operations in both isolated and integrated scenarios.
- Reporting: Generating detailed reports with insights and cURL commands for easy issue reproduction.
Our study, presented at the 44th International Conference on Software Engineering, highlighted Schemathesis's performance:
Defect Detection: identified a total of 755 bugs in 16 services, finding between 1.4× to 4.5× more defects than the second-best tool in each case.
High Reliability: consistently operates seamlessly on any project, ensuring unwavering stability and reliability.
Explore the full paper at https://ieeexplore.ieee.org/document/9793781
Discover what Schemathesis brings to your API development workflow:
- 🏖️ Ease of Use: Accessible and straightforward, Schemathesis requires no expertise for effective API testing, while still offering advanced settings for those who need them.
- ⚡ Quick Integration: Get started with minimal setup and integrate seamlessly into your existing development workflow in minutes.
- 🔍 Advanced data generation: Leverage techniques like Swarm Testing and Schema Fuzzing to identify elusive errors often missed by traditional methods.
- 🛡️ Enhanced security: Fortify your API's defense by detecting vulnerabilities early in the development process.
- 🤝 Integration and Collaboration: Streamline teamwork with automated GitHub reports and in-app insights, enhancing organizational collaboration.
- 📊 Comprehensive reports and analysis: Utilize insightful reports that retain historical data, maintaining API health over time.
- 🛠️ Open-source CLI: Create extensions and retain control over your data, seamlessly integrating with your existing workflows.
- 💬 Community and Support: Join our Discord channel for access to learning resources and prompt support to resolve questions and expand your knowledge.
Discover our affordable pricing plans, including a generous free tier that offers unlimited projects and a reasonable data retention period. Experience real value without a price tag. Learn more.
Supported API Specifications
We currently support the following API specifications, with more on the way:
- OpenAPI 2.0
- OpenAPI 3.0
Schemathesis effectively generates test cases for OpenAPI specifications, even for those under development or evolving, catering to about 99.4% of APIs listed in the OpenAPI directory - a comprehensive collection of several thousand real-life Open API definitions.
Additionally, the system highlights incorrect or logically invalid schemas where test data generation is not possible, aiding in maintaining schema quality.
While our support for GraphQL is more recent, it ensures robust and comprehensive API testing, with continual improvements underway to enhance functionality.
We have recently added experimental support for OpenAPI 3.1. While it's under active development, feel free to try it out and provide feedback for further improvements!