Big balls of mud are software systems with poor architecture due to business pressure, developer turnover and compounding technical debt. Using a Django reminders app as an example, I will show the audience how writing functional tests with a new framework can close the feedback loop and make their code more tractable, letting them refactor a big mess into something more elegant.
Big balls of mud are software systems with poor architecture due to business pressure, developer turnover and compounding technical debt.
Using a fully fledged web application written using Django/Celery/Postgres/Redis/Cron that sends email reminders as an example, I will show the audience how they can easily write realistic test cases and do test driven development with a new testing framework, making refactoring such code easier.
Hitch is a loosely coupled, isolated open source testing framework, with a strong emphasis on functional testing. It orchestrates interacting services and enacts scenarios in isolated tests that can't easily be scripted without it (for instance, with Django's LiveServerTestCase).
These tests will involve installing a Django app in a virtualenv, interaction using a browser with selenium, mocking the passage of time, sending emails and more.