Hypothesis is the Python tool used for property based testing.
Hypothesis claims to combine "human understanding of your problem domain with machine intelligence to improve the quality of your testing process while spending less time writing tests."
In this episode Alexander Hultnér introduces us to property based testing in Python with Hypothesis.
Some topics covered:
- What is property based testing
- Thinking differently for property based testing
- Using hypothesis / property based testing in conjunction with normal testing
- Failures saved and re-run
- What parts of development/testing is best suited for hypothesis / property based testing
- Comparing function implementations
- Testing against REST APIs that use Open API / Swagger with schemathesis
- Changing the number of tests in different test environments
- System, integration, end to end, and unit tests
- Hypothesis home
- Hypothesis docs
- Test Fast, Fix More - Property based testing with Hypothesis by Alexander Hultnér - YouTube
- Quickcheck, Grandfather of property based testing
- Beyond Unit Tests, Hillel Wayne, PyCon 2018
- Better Testing With Less Code, Matt Bachmann, PyCon 2016
- Choosing properties for property-based testing (F#)
- schemathesis: Hypothesis + Open API / Swagger for testing web applications