The Wayback Machine - https://web.archive.org/web/20240227171948/https://realpython.com/learning-paths/test-your-python-apps/
Learning Path ⋅ Skills: Testing Python Code, PyTest, Mocking
No developer is perfect, we all make mistakes and if left unchecked, some of these mistakes can lead to failures or bugs that can be very expensive to recover from.
Testing your code helps to catch these mistakes or avoid getting them into production in the first place. Testing therefore is very important in software development. Used effectively, tests help to identify bugs, ensure the quality of the product and to verify that the software does what it is meant to do.
With this learning path you’ll learn how to effectively test your Python code using modern tools and current best-practices.
Learning Path ⋅ 6 Resources
Course
In this hands-on course, you’ll see how to create Python unit tests, execute them, and find the bugs before your users do. You’ll learn about the tools available to write and execute tests, check your application’s performance, and even look for security issues.
#1
Course
Learn how to take your testing to the next level with pytest. You'll cover intermediate and advanced pytest features such as fixtures, marks, parameters, and plugins. With pytest, you can make your test suites fast, effective, and less painful to maintain.
#2
#3
Course
Learn the basics of using pdb, Python's interactive source code debugger. pdb is a great tool for tracking down hard-to-find bugs, and it allows you to fix faulty code more quickly.
#4
Course
Learn the core concepts behind Continuous Integration (CI) and why they are essential for modern software engineering teams. Find out how to how set up Continuous Integration for your Python project to automatically create environments, install dependencies, and run tests.
#5
Course
Learn how to use the Python mock object library, unittest.mock, to create and use mock objects to improve your tests. Obstacles like complex logic and unpredictable dependencies make writing valuable tests difficult, but unittest.mock can help you overcome these obstacles.
#6