Python 3 Object-Oriented Programming, 4th ed. Chapter 13. Testing Object-Oriented Programs. Why test? Unit testing Testing with pytest Imitating expensive objects How much testing is enough? Multi-environment testing with Tox Case study