Video description
Automated tests are great! They tell you when your software is broken and enable you to refactor with confidence, leading to cleaner codebases and less stressed developers. Tests are so great, in fact, that a group of true believers started writing them before the actual code. What they called test-driven development (TDD) turned out to be a fantastic way to develop software.
Now, with this video course, you can get started with TDD step-by-step. TDD is often demonstrated with toy examples that fail to represent the challenges of real-world software development. But in this course, Harry Percival takes you through a practical example designed to look more like real life: building a simple web app with all the complexities associated with web browsers, the HTTP protocol, web frameworks, and database integration.
You’ll learn how to:
- Use unit tests to guide the development of Django view functions and model classes
- Test user interactions with functional tests that use Selenium to drive a real web browser
- Get a feeling for the unit-test/code cycle, where tests verify each tiny change to the code
- Use tests to refactor code systematically and with confidence
- Make version control with Git part of the process
- Evolve an existing application incrementally, always going from working state to working state
This video course is based on Harry Percival’s book, Test-Driven Development with Python from O’Reilly. Once you’ve completed the course, you can dig even deeper into the subject with the book.
Harry J.W. Percival works at PythonAnywhere LLP and spreads the gospel of TDD worldwide at talks, workshops, and conferences.
Table of Contents
Introduction to Test-Driven Development
Our First Test
Unittest
Unit Tests First View
Refactoring
First POST Request
The Database
Testing Isolation and Evolving the Application
Working State to Working State
Getting to the Minimum Viable Product
Don’t Forget the Refactor!