Introduction
This talk is aimed at anyone interested in testing real code with real deadlines. In this talk Test Driven Development (TDD) will be explored along with alternatives to TDD. By the end of this talk participants will have a greater understanding of how to apply one of the tools of testing in the real world and how to ensure they have time in the development cycle to test their code.
Questions covered
Almost everyone talks about TDD these days. TDD is taken as the thing to aim for and the one thing you must do as a developer. But does TDD actually work when you are out of the classroom context and in the real world? Are there alternatives to TDD that are better to use? How do you begin to test legacy code so that you can change it safely? What about that new feature that marketing wants ASAP and you have to quickly pull a rabbit out the hat for? How should one ensure that this new code is added rapidly but with good tests? These and many other questions will be briefly explored in this talk.
Tools used
This talk will focus on unit testing and will use Python nose as the test runner. Python nose extends unittest and makes it easier to setup, discover and run tests with Python. Some brief examples of tests will be shown using Python 2.7 but the broader concepts apply equally well to Python 3.