pypi schemathesis 4.8.0
Release 4.8.0

5 days ago

This release focuses on test budget efficiency - getting more value from every test case.

Benchmarks against a real-world API show success rate improved from 5% to 48%, meaning tests now reach deeper application logic instead of being rejected at input validation.

🚀 Added

  • Automatic success rate targeting to guide test generation toward valid API inputs.
  • Translate PCRE Unicode property escapes (\p{L}, \p{N}) to Python regex equivalents.
  • Propagate shared path parameters in inferred links for nested resources.
  • Fuzzing phase now uses valid resource relationships for nested paths.

🔧 Changed

  • Deprioritize null and boolean type mutations for path parameters to improve test budget efficiency.
  • Recency-weighted sampling of captured resource IDs to reduce repeated operations on the same resources.
  • Bias path parameter integers toward positive values to reduce test budget spent on likely invalid IDs.
  • Use st.sampled_from for captured variants instead of schema augmentation.
  • Context-aware resource pool to preserve diversity across parent resources.
  • Bias test generation toward captured IDs over random values.
  • Reduce negative test generation for parameters with captured response values.

🐛 Fixed

  • Captured resource ID selection biased toward early indices.
  • Resource pool capacity too small, causing most captured resources to be evicted before use.
  • Resource pool not recording IDs from successful responses when other test cases in the same scenario failed.
  • Incorrect operation ordering within dependency layers.

Don't miss a new schemathesis release

NewReleases is sending notifications on new releases.