Schemathesis VS Flask

Compare Schemathesis vs Flask and see what are their differences.

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
Schemathesis Flask
23 134
2,078 66,226
2.6% 0.6%
9.7 8.7
9 days ago 8 days ago
Python Python
MIT License BSD 3-clause "New" or "Revised" License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Schemathesis

Posts with mentions or reviews of Schemathesis. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-21.
  • Ask HN: Any Good Fuzzer for gRPC?
    3 projects | news.ycombinator.com | 21 Mar 2024
    I am not aware of any tools like that, but eventually, I plan to add support for gRPC fuzzing to Schemathesis. There were already some discussions and it is more or less clear how to move forward. See https://github.com/schemathesis/schemathesis/discussions/190...
    3 projects | news.ycombinator.com | 21 Mar 2024
    I have been using Schemathesis (https://github.com/schemathesis/schemathesis) for some time to test REST APIs and I have found it amazing. I love the ways it find unexpected bugs and it really help me have more confidence in my systems.I also love how it integrate directly with pytest but that's more of a cherry on the cake.

    But now I am working with GRPC service I can't find anything similar. The few solutions I found are closed source and necessitate to integrate with 3rd party platforms.I found that strange as GRPC as RPC seem perfect for fuzzing.

    Did I miss a great tool that you use?

  • A Tale of Two Kitchens - Hypermodernizing Your Python Code Base
    31 projects | dev.to | 12 Nov 2023
    SchemaThesis is a powerful tool, especially when working with web APIs, and here's how it can enhance your testing capabilities:
  • Hurl 4.0.0
    6 projects | news.ycombinator.com | 30 Jun 2023
  • OpenAPI v4 Proposal
    24 projects | news.ycombinator.com | 31 May 2023
    I'm sorry, but you have completely misunderstood the purpose of Open API.

    It is not a specification to define your business logic classes and objects -- either client or server side. Its goal is to define the interface of an API, and to provide a single source of truth that requests and responses can be validated against. It contains everything you need to know to make requests to an API; code generation is nice to have (and I use it myself, but mainly on the server side, for routing and validation), but not something required or expected from OpenAPI

    For what it's worth, my personal preferred workflow to build an API is as follows:

    1. Build the OpenAPI spec first. A smaller spec could easily be done by hand, but I prefer using a design tool like Stoplight [0]; it has the best Web-based OpenAPI (and JSON Schema) editor I have encountered, and integrates with git nearly flawlessly.

    2. Use an automated tool to generate the API code implementation. Again, a static generation tool such as datamodel-code-generator [1] (which generates Pydantic models) would suffice, but for Python I prefer the dynamic request routing and validation provided by pyapi-server [2].

    3. Finally, I use automated testing tools such as schemathesis [3] to test the implementation against the specification.

    [0] https://stoplight.io/

    [1] https://koxudaxi.github.io/datamodel-code-generator/

    [2] https://pyapi-server.readthedocs.io

    [3] https://schemathesis.readthedocs.io

  • Faster time-to-market with API-first
    12 projects | dev.to | 25 Oct 2022
    Consolidating the API specification with OpenAPI was a turning point for the project. From that moment we were able to run mock servers to build and test the UI before integrating with the backend, and we were able to validate the backend implementation against the specification. We used prism to run mock servers, and Dredd to validate the server implementation (these days I’d rather use schemathesis).
  • Show HN: Step CI – API Testing and Monitoring Made Simple
    11 projects | news.ycombinator.com | 10 Oct 2022
  • API-first development maturity framework
    3 projects | dev.to | 6 Sep 2022
    In this approach, you produce an API specification first, then you build the API against the specification, and then you validate your implementation against the specification using automated API testing tools. This is the most reliable approach for building API servers, since it’s the only one that holds the server accountable and validates the implementation against the source of truth. Unfortunately, this approach isn’t as common as it should be. One of the reasons why it isn’t so common is because it requires you to produce the API specification first, which, as we saw earlier, puts off many developers who don’t know how to work with OpenAPI. However, like I said before, generating OpenAPI specifications doesn’t need to be painful since you can use tools for that. In this approach, you use automated API testing tools to validate your implementation. Tools like Dredd and schemathesis. These tools work by parsing your API specification and automatically generating tests that ensure your implementation complies with the specification. They look at every aspect of your API implementation, including use of headers, status codes, compliance with schemas, and so on. The most advanced of these tools at the moment is schemathesis, which I highly encourage you to check out.
  • This Week in Python
    4 projects | dev.to | 12 Aug 2022
    schemathesis – Run generated test scenarios based on your OpenAPI specification
  • Best way to test GraphQL API using Python?
    4 projects | /r/graphql | 28 Jun 2022
    Hi u/autumn_nite Python has an excellent ecosystem for GraphQL testing. Your first stop for painless GraphQL testing is schemathesis. To test your API with schemathesis, you simply need to start up your GraphQL server, and then run schemathesis like this:

Flask

Posts with mentions or reviews of Flask. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-30.

What are some alternatives?

When comparing Schemathesis and Flask you can also consider the following projects:

fastapi - FastAPI framework, high performance, easy to learn, fast to code, ready for production

Django - The Web framework for perfectionists with deadlines.

AIOHTTP - Asynchronous HTTP client/server framework for asyncio and Python

quart - An async Python micro framework for building web applications.

starlette - The little ASGI framework that shines. 🌟

Tornado - Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.

uvicorn - An ASGI web server, for Python. 🦄

CherryPy - CherryPy is a pythonic, object-oriented HTTP framework. https://cherrypy.dev

web.py - web.py is a web framework for python that is as simple as it is powerful.

Bottle - bottle.py is a fast and simple micro-framework for python web-applications.

Masonite - The Modern And Developer Centric Python Web Framework. Be sure to read the documentation and join the Discord channel for questions: https://discord.gg/TwKeFahmPZ

dash - Data Apps & Dashboards for Python. No JavaScript Required.