Test Driven Web Development (Travis Swicegood)
Ever wonder how to unit test a web service? Do you struggle figuring out how to test cross-browser tests for an website's AJAX interfaces? Think that Test Driven Development is great for academics or programmers who don't have to execute their programs in the real world, but have that nagging feeling that at least some of the idioms of the traditional unit test apply to web development?
This is the tutorial for you if you answered yes to any of those questions. Test Driven Web Development pulls xUnit out of its abstract world and puts it square in the middle of our every day lives as web developers. We start off with the fundamentals of testing and progress rapidly through different types of testing—unit, functional, acceptance, and even a bit of performance—and demonstrate how you can use to make better, more extensible, more scalable systems.
Intended Audience
Beginning to intermediate Python programmers with little or no exposure to Test Driven Development (TDD). Attendees may or may not understand the differences between unit, functional, and acceptance tests. Basic understanding of object-oriented programming in Python is assumed.
Class Outline
- Introduction: Grokking TDD
- Understanding the Unit in Unit-Testing
- Functional Tests: When to enter the real-world
- Acceptance Tests: Getting the stakeholders involved
- Performance Testing: Tuning for Speed Putting
- Theory to the Test: Interactively Build a Web App Q&A
Requirements
Laptops are encouraged. If attendees want to follow along, a working version of Python 2.6 is expected. Any additional software will be available via LAN and USB flash drives and a full list of required software can be provided via the website. A working version of Git (latest stable) and Bananajour (http://github.com/tswicegood/bananajour) are recommended, though neither are required. Bananajour requires Ruby 1.8.x.




























.