Any team developing and maintaining software - be it free and opensource or commercial - employs one form of software testing or another.But what are the different kinds of tests in our tool boxes? And how arethey best used? In this talk we'll take a look around and try to answerthese questions.First, we'll examine the basic concepts of testing: Everyone hasprobably at least heard about *unit tests* , but are they all you need?*Performance tests* can help you find out how well your product performsunder load and detect bottle necks early on. *Manual testing* is oftenlooked down upon, since it's not automated, but is it always a bad idea?And what even *is* *mutation testing*?We'll also get to know a lot of the amazing testing tools from thePython ecosystem. Find out what the best test runner is (Spoiler alert:it's pytest). Learn how to make writing test more fun and less workusing tools like mock, Faker and factory\_boy. Measure the quality ofyour test suite using coverage.py.But no tool is the right one for any situation. We'll also talk aboutwhen and how to use each of the tools, while debunking commonmisconceptions and demonstrating best practices.
I would like to work with open source projects to create a branch of the tree with all
of the best videos for your open source project. Please
send me an email if you are interested.