Overview
Explore nondeterminism in code and learn how to tame it using dependency injection in this 29-minute EuroPython 2021 conference talk. Discover the challenges posed by nondeterminism, including its impact on testing and code clarity. Follow along as the speaker guides you through a series of problems, demonstrating how dependency injection can be gradually integrated to address these challenges. Gain insights into identifying nondeterminism in code, understanding the concept of dependency injection, and implementing it effectively in Python. By the end of the talk, acquire practical knowledge to improve code reliability and testability by controlling nondeterministic elements in your projects.
Syllabus
Introduction
Welcome
Overview
Simple Implementation
Flaky Test
Another Approach
Nondeterminism
Control in Tests
Patching
Summary
Recap
Example
Solution
Switching implementation
Conclusion
Taught by
EuroPython Conference