I was listening to the radio on the drive into Crank HQ this morning and one of the guests used a great line:
We can't test what is important, so what becomes important is what we can test
I thought to myself that this summed up the role of the user interface in most software products. The user interface represents a customer's main interaction point with a product but all too often it is the core functionality that the user interface drives that receives all of the testing attention. Modern software development methodologies such as Test Driven Development and Continuous Integration put an emphasis on using automated build and test cycles to ensure that a project doesn't veer off track. Unfortunately, the mechanics of applying these ideas become so awkward slow and frustrating that they rapidly are abandoned in favour of the more standard API unit testing that can bring immediate gratification.
Recognizing this UI testing and continuous integration challenge we wanted to ensure we addressed them in the design of Storyboard:
When these Storyboard SDK functionalities of event capture, playback and screen image dumps are taken together, they provide a solid base upon which to build tools that fit into your own testing processes and frameworks. In fact at Crank we use these same functionalities to validate our nightly builds across 5 different operating systems, 4 CPU architectures and 6 different rendering technologies.
Thomas