Over the past few years, automated software testing has moved from being a niche interest to being the default assumption. This tutorial is an introduction to Test-Driven Development (TDD) for the world of web development in Python using the Django framework.
The tutorial is suitable for people who are new to either testing, or Django, or both, although some basic working knowledge of Python syntax (or programming in another language) is assumed.
- Unit testing and Functional testing
- the Selenium browser automation tool
- Python's unittest standard library module
- Django models, views and templates
- testing front-end and back-end code
- refactoring, using tests
- the unit-test/code cycle, or Red-Green-Refactor, TDD workflow
- and the Testing Goat, Python's unofficial mascot for testing!
Come prepared! You'll need a Python 3.6 virtualenv with Django and Selenium installed. Detailed instructions are provided [here](https://www.obeythetestinggoat.com/book/pre-requisite-installations.html).
I am looking for editors/curators to help with branches of the tree. Please send me an email if you are interested.