Writing Maintainable Automated Acceptance Tests
This is the demo code for my demonstration of how to write maintainable automated acceptance tests.
README.markdown : The file you are now reading.
: Commands and utilities for running tests.
rake -T to see the commands.
app : The application being tested. cli.rb is the command line version. server.rb is the web version.
atest : Acceptance tests for the app. These are the ugly versions of the tests, replete with incidental details and duplication. Over the course of the demonstration, I show how to improve these tests incrementally, making them clearer and more adaptable to change.
examples : A sampling of the acceptance tests at various stages during the demonstration.
unit : Unit tests for the app.
My article (PDF) that walks through the demonstration.
My blog post on the topic, with interesting comments from readers.
Robot Framework, the testing tool I used in the demo.