Releases: schemathesis/schemathesis
Releases · schemathesis/schemathesis
Release 3.29.2
🐛 Fixed
- Remove temporary
print
calls.
Release 3.29.1
🐛 Fixed
- Inlining too much in stateful testing.
Release 3.29.0
🔧 Changed:
- INTERNAL: Remove the ability to mutate components used in
schema["/path"]["METHOD"]
access patterns.
🐛 Fixed
- Not serializing shared parameters for an API operation.
OperationNotFound
raised inschema.get_operation_by_id
if the relevant path item is behind a reference.- Missing parameters shared under the same path in stateful testing if the path is behind a reference.
KeyError
instead ofOperationNotFound
when the operation ID is not found in Open API 3.1 without path entries.- Not respecting
allow_x00=False
in headers and cookies. #2220 - Internal error when building an error message for some network-related issues. #2219
🏎️ Performance
- Optimize
schema["/path"]["METHOD"]
access patterns and reduce memory usage. - Optimize
get_operation_by_id
method performance and reduce memory usage. - Optimize
get_operation_by_reference
method performance. - Less copying during schema traversal.
Release 3.28.1
🐛 Fixed
- Internal error on unresolvable Open API links during stateful testing.
- Internal error when media type definition has only
example
orexamples
keys.
🏎️ Performance
- Improve performance of
add_link
by avoiding unnecessary reference resolving.
Release 3.28.0
I am happy to announce Schemathesis 3.28 🎉
It does not include a lot of new features but instead clarifies error messages and makes Schemathesis work with more recursive references than before.
🚀 Added
Request.deserialize_body
andResponse.deserialize_body
helper methods to deserialize payloads to bytes from Base 64.- Support for
multipart/mixed
media type.
🔧 Changed
- Do not show suggestions to show a traceback on Hypothesis'
Unsatisfiable
error. - Clarify error message on unsupported recursive references.
- Report more details on some internal errors instead of "Unknown Schema Error".
- Update error message on why Schemathesis can't generate test cases for some API operations.
🐛 Fixed
- Internal error on Windows when the CLI output is redirected to a file and code samples contain non-CP1252 characters.
- Properly check for nested recursive references inside combinators. This makes Schemathesis work with more schemas with recursive references.
Release 3.27.1
Release 3.27.0
The new release of Schemathesis introduces important changes for ASGI & WSGI applications. Now, you can use Case.call
and Case.call_and_validate
to run tests directly, replacing the previous separate methods for these application types (call_asgi
/ call_wsgi
)
🚀 Added
Case.as_transport_kwargs
method to simplify the creation of transport-specific keyword arguments for sending requests.
🔧 Changed
- Make
Case.call
work withASGI
&WSGI
applications. - Extend the JUnit XML report format to match CLI output including skipped tests, code samples, and more.
🗑️ Deprecated
Case.call_wsgi
&Case.call_asgi
in favor ofCase.call
.Case.as_requests_kwargs
&Case.as_werkzeug_kwargs
in favor ofCase.as_transport_kwargs
.
Release 3.26.2
🚀 Added
- Support for
pyrate-limiter>=3.0
.
🐛 Fixed
- Excluding
\x00
bytes as a result of probes.
Release 3.26.1
🚀 Added
- Store time needed to generate each test case.
🐛 Fixed
InvalidArgument
when usingfrom_pytest_fixture
with parametrized pytest fixtures and Hypothesis settings. #2115
Release 3.26.0
🚀 Added
- Support for per-media type data generators. #962
- Support for
application/yaml
&text/yml
media types inYAMLSerializer
. - EXPERIMENTAL: Run automatic schema optimization & format inference if CLI is authenticated in Schemathesis.io.
🐛 Fixed
- Not resolving references in nested security schemes. #2073
🔧 Changed
- Improve the error message when the minimum possible example is too large.