Yes, we have tests. So what?
summary
The talk examines practical problems with large or low-quality test suites in Python backend teams using pytest, explaining why having tests alone isn’t enough and how poor tests cause pain during refactoring. It covers spotting test "code smells," pytest plugins that simplify writing and maintaining tests, and useful metrics to collect from tests when a project grows to thousands of tests.
AI-written summary · about
chapters (28)
- 0:00Introduction
- 1:04About the talk
- 3:31Test problems in practice
- 4:34Testing structure and approaches
- 5:36Arrange-Act-Assert
- 7:42Test case problems
- 8:24Given-When-Then and describe blocks
- 10:31Structuring tests
- 11:34What asserts check
- 12:35Comparing responses in tests
- 13:59Declarative asserts and snapshot tests
- 15:41Fixture problems
- 17:46When to use fixtures
- 20:14Memory fixture problems
- 21:18Fixture tools
- 22:19Flaky tests and fixes
- 23:44Property-based testing
- 25:49Mutation testing
- 27:12Unit vs integration tests
- 29:01Test pyramid
- 30:24BDD testing
- 32:11Mocks and stubs
- 34:18Mocks vs stubs
- 36:02Spies and fakes
- 37:24Mock patch features
- 38:49Speeding up tests
- 40:12Performance monitoring
- 41:17Summary and feedback
related talks
28mEgad! How Do We Start Writing Better Tests?
29mEgad! How Do We Start Writing (Better) Tests?
46mWhy Do We Even Need Tests?
38mTesting for the Terrified: How to Write Tests, Conquer Guilt, and Level Up
27mWhy I use py.test and maybe you should too
48mA Reflection on Software Testing
28m"WHAT IS THIS MESS?" - Writing tests for pre-existing code bases
23mThe Unspeakable Horror of Discovering You Didn't Write Tests
