0.24.3 - 2020-02-10
- Not copied
validate_schema
parameter inBaseSchema.parametrize
. Regression after implementing #383 - Missing
app
,location
andhooks
parameters in schema when used withBaseSchema.parametrize
. #416
0.24.2 - 2020-02-09
- Crash on invalid regular expressions in
method
,endpoint
andtag
CLI options. #403 - Crash on non latin-1 encodable value in
auth
CLI option. #404 - Crash on invalid value in
header
CLI options. #405 - Crash on some invalid URLs in
schema
CLI option. #406 - Validation of
--request-timeout
parameter. #407 - Crash with
--hypothesis-deadline=0
CLI option. #410 - Crash with
--hypothesis-max-examples=0
CLI option. #412
0.24.1 - 2020-02-08
- CLI crash on Windows and Python < 3.8 when the schema path contains characters unrepresentable at the OS level. #400
0.24.0 - 2020-02-07
- Support for testing of examples in Parameter & Media Type objects in Open API 3.0. #394
--show-error-tracebacks
CLI option to display errors' tracebacks in the output. #391- Support for schema behind auth. #115
- Schemas with GET endpoints accepting body are allowed now if schema validation is disabled (via
--validate-schema=false
for example). The usecase is for tools like ElasticSearch that use GET requests with non empty bodies. #383
- CLI crash when an explicit example is specified in endpoint definition. #386
0.23.7 - 2020-01-30
-x
/--exitfirst
CLI option to exit after first failed test. #378
- Handling examples of parameters in Open API 3.0. #381
0.23.6 - 2020-01-28
all
variant for--checks
CLI option to use all available checks. #374
- Use built-in
importlib.metadata
on Python 3.8. #376
0.23.5 - 2020-01-24
- Generation of invalid values in
Case.cookies
. #371
0.23.4 - 2020-01-22
- Converting
exclusiveMinimum
&exclusiveMaximum
fields to JSON Schema. #367
0.23.3 - 2020-01-21
- Filter out surrogate pairs from query string.
0.23.2 - 2020-01-16
- Prevent
KeyError
when response does not have Content-Type. #365
0.23.1 - 2020-01-15
- Dockerfile entrypoint was not working as per docs. #361
0.23.0 - 2020-01-15
- Hooks for strategy modification. #313
- Input schema validation. Use
--validate-schema=false
to disable it in CLI andvalidate_schema=False
argument in loaders. #110
0.22.0 - 2020-01-11
- Show multiple found failures in the CLI output. #266 & #207
- Raise proper exception when the given schema is invalid. #308
- Support for
None
as a value for--hypothesis-deadline
. #349
- Handling binary request payloads in
Case.call
. #350 - Type of the second argument to all built-in checks set to proper
Case
instead ofTestResult
. The error was didn't affect built-in checks since bothCase
andTestResult
hadendpoint
attribute and only it was used. However this fix is not backward-compatible with 3rd party checks.
0.21.0 - 2019-12-20
- Support for AioHTTP applications in CLI. #329
0.20.5 - 2019-12-18
- Compatibility with the latest release of
hypothesis-jsonschema
and setting its minimal required version to0.9.13
. #338
0.20.4 - 2019-12-17
- Handling
nullable
attribute in Open API schemas. #335
0.20.3 - 2019-12-17
- Response status code conformance check applicability for old
requests
version. #330
0.20.2 - 2019-12-14
- Response schema conformance check for Open API 3.0. #332
0.20.1 - 2019-12-13
- Support for response code ranges. #330
0.20.0 - 2019-12-12
- WSGI apps support. #31
Case.validate_response
for running built-in checks against app's response. #319
- Checks receive
Case
instance as a second argument instead ofTestResult
. This was done for making checks usable in Python tests viaCase.validate_response
. Endpoint and schema are accessible viacase.endpoint
andcase.endpoint.schema
.
0.19.1 - 2019-12-11
- Compatibility with Hypothesis >= 4.53.2. #322
0.19.0 - 2019-12-02
0.18.1 - 2019-11-28
- Validation of
base-url
CLI parameter. #311
0.18.0 - 2019-11-27
- Resolving references in
PathItem
objects. #301
- Resolving of relative paths in schemas. #303
- Loading string dates as
datetime.date
objects in YAML loader. #305
0.17.0 - 2019-11-21
- Resolving references that point to different files. #294
- Keyboard interrupt is now handled during the CLI run and the summary is displayed in the output. #295
0.16.0 - 2019-11-19
- Display RNG seed in the CLI output to allow test reproducing. #267
- Allow to specify seed in CLI.
- Ability to pass custom kwargs to the
requests.get
call inloaders.from_uri
.
- Refactor case generation strategies: strategy is not used to generate empty value. #253
- Improved error message for invalid path parameter declaration. #255
- Pytest fixture parametrization via
pytest_generate_tests
. #280 - Support for tests defined as methods. #282
- Unclosed
requests.Session
on callingCase.call
without passing a session explicitly. #286
0.15.0 - 2019-11-15
- Support for OpenAPI 3.0 server variables (base_path). #40
- Support for
format: byte
. #254 - Response schema conformance check in CLI / Runner. #256
- Docker image for CLI. #268
- Pre-run hooks for CLI. #147
- A way to register custom checks for CLI via
schemathesis.register_check
. #270
- Not encoded path parameters. #272
- Verbose messages are displayed in the CLI on failed checks. #261
0.14.0 - 2019-11-09
- CLI: Support file paths in
schema
argument. #119 - Checks to verify response status & content type in CLI / Runner. #101
- Custom base URL handling in CLI / Runner. #248
- Raise an error if schema has body for GET requests. #218
- Method names are case insensitive during direct schema access. #246
0.13.2 - 2019-11-05
IndexError
when Hypothesis found inconsistent test results during the test execution in runner. #236
0.13.1 - 2019-11-05
- Support for binary format #197
- Error that happens when there are no success checks in the statistic in CLI. #237
0.13.0 - 2019-11-03
- An option to configure request timeout for CLI / Runner. #204
- A help snippet to reproduce errors caught by Schemathesis. #206
- Total running time to the CLI output. #181
- Summary line in the CLI output with the number of passed / failed / errored endpoint tests. #209
- Extra information to the CLI output: schema address, spec version and base url. #188
- Compatibility with Hypothesis 4.42.4+ . #212
- Display flaky errors only in the "ERRORS" section and improve CLI output. #215
- Handling
formData
parameters inCase.call
. #196 - Handling cookies in
Case.call
. #211
- More readable falsifying examples output. #127
- Show exceptions in a separate section of the CLI output. #203
- Error message for cases when it is not possible to satisfy schema parameters. It should be more clear now. #216
- Do not stop on schema errors related to single endpoint. #139
- Display a proper error message when schema is not available in CLI / Runner. #214
0.12.2 - 2019-10-30
- Wrong handling of
base_url
parameter in runner andCase.call
if it has a trailing slash. #194 and #199 - Do not send any payload with GET requests. #200
0.12.1 - 2019-10-28
- Handling for errors other than
AssertionError
andHypothesisException
in the runner. #189 - CLI failing on the case when there are tests, but no checks were performed. #191
- Display "SUMMARY" section in the CLI output for empty test suites.
0.12.0 - 2019-10-28
- Display progress during the CLI run. #125
- Test server generated wrong schema when
endpoints
option is passed via CLI. #173 - Error message if schema is not found in CLI. #172
- Continue running tests on hypothesis error. #137
0.11.0 - 2019-10-22
- LazySchema accepts filters. #149
- Ability to register strategies for custom string formats. #94
- Generator-based events in
runner
module to improve control over the execution flow. - Filtration by tags. #134
- Base URL in schema instances could be reused when it is defined during creation. Now on,
base_url
argument inCase.call
is optional in such cases. #153 - Hypothesis deadline is set to 500ms by default. #138
- Hypothesis output is captured separately, without capturing the whole stdout during CLI run.
- Disallow empty username in CLI
--auth
option.
- Undocumented support for
file://
uri schema
0.10.0 - 2019-10-14
- HTTP Digest Auth support. #106
- Support for Hypothesis settings in CLI & Runner. #107
Case.call
andCase.as_requests_kwargs
convenience methods. #109- Local development server. #126
- Autogenerated
runner.StatsCollector.__repr__
to make Hypothesis output more readable.
0.9.0 - 2019-10-09
- Test executor collects results of execution. #29
- CLI option
--base-url
for specifying base URL of API. #118 - Support for coroutine-based tests. #121
- User Agent to network requests in CLI & runner. #130
- CLI command
schemathesis run
prints results in a more readable way with a summary of passing checks. - Empty header names are forbidden for CLI.
- Suppressed hypothesis exception about using
example
non-interactively. #92
0.8.1 - 2019-10-04
- Wrap each individual test in
suppress
so the runner doesn't stop after the first test failure.
0.8.0 - 2019-10-04
- CLI tool invoked by the
schemathesis
command. #30 - New arguments
api_options
,loader_options
andloader
for test executor. #90 - A mapping interface for schemas & convenience methods for direct strategies access. #98
- Runner stopping on the first falsifying example. #99
0.7.3 - 2019-09-30
- Filtration in lazy loaders.
0.7.2 - 2019-09-30
- Conflict for lazy schema filtering. #64
0.7.1 - 2019-09-27
- Support for
x-nullable
extension. #45
0.7.0 - 2019-09-26
- Support for
cookie
parameter in OpenAPI 3.0 schemas. #21 - Support for
formData
parameter in Swagger 2.0 schemas. #6 - Test executor. #28
- Using
hypothesis.settings
decorator with test functions created fromfrom_pytest_fixture
loader. #69
0.6.0 - 2019-09-24
- Parametrizing tests from a pytest fixture via
pytest-subtests
. #58
- Rename module
readers
toloaders
. - Rename
parametrize
parameters.filter_endpoint
toendpoint
andfilter_method
tomethod
.
- Substring match for method / endpoint filters. To avoid clashing with escaped chars in endpoints keys in schemas.
0.5.0 - 2019-09-16
- Generating explicit examples from schema. #17
- Schemas are loaded eagerly from now on. Using
schemathesis.from_uri
implies network calls.
- Using
Parametrizer.from_{path,uri}
is deprecated, useschemathesis.from_{path,uri}
instead.
- Body resolving during test collection. #55
0.4.1 - 2019-09-11
- Possibly unhandled exception during
hasattr
check inis_schemathesis_test
.
0.4.0 - 2019-09-10
- Resolving all inner references in objects. #34
jsonschema.RefResolver
is now used for reference resolving. #35
0.3.0 - 2019-09-06
Parametrizer.from_uri
method to construct parametrizer instances from URIs. #24
- Possibility to use
Parametrizer.parametrize
and customParametrizer
kwargs for passing config options tohypothesis.settings
. Usehypothesis.settings
decorators on tests instead.
0.2.0 - 2019-09-05
- Handle errors during collection / executions as failures.
- Use
re.search
for pattern matching infilter_method
/filter_endpoint
instead offnmatch
. #18 Case.body
contains properties from the target schema, without extra level of nesting.
KeyError
on collection when "basePath" is absent. #16
- Initial public release