The second great myth of software development training is the notion that most programming most of the time is on new code. In fact, most developers spend most of their time working on CRRAP: Code Requiring Remedial Attention Promptly. In this course, we’ll lay out the five basic patterns for bringing complex legacy code under perfectly tested control. If you’ve ever heard or said “Don’t touch that, you don’t know what it’s connected to,” this class is for you. Each pattern is illustrated with a complete real-world
First, I’d like to present an experience report about real-life development with mock objects: the test-driven struggle. Then I will show how to improve the TDD experience and code quality through a slightly different approach to mocking: taking a step back from the invasive nature of interaction based testing and getting closer to the way we do state based testing. Finally, I will introduce a new mock library for java: Mockito which was driven by these observations. Mockito implements what Gerard Meszaros calls a Test Spy.
Process in short:
Experience report (shows the problem) -> tutorial of a new tool (tries to fix the problem)
JTestMe dynamically defines optimised smoke test suites for Java applications - dramatically improving the continuous integration cycle time. It is an Open Source project by ThoughtWorks, hosted on the Codehaus.
Abstract:
When test-driving a GUI component, some aspects are best checked by manual, exploratory testing. JDemo, inspired by JUnit and in extensive use and refinement since 2003, eases bringing the component onto the screen in the desired state and thereby allows the developer to concentrate on the task at hand and rapidly iterate through different versions of the component. The session will give an introduction to the framework, and by means of a live example show how it can be used to effectively integrate exploratory testing into the TDD cycle.