
Test-Driven Development & Refactoring Techniques, September 15-17
Michael Feathers , known for his book Working Effectively with Legacy Code teaches you to deal with complexity of doing TDD.
Test Driven Development (TDD) is one of the most profound Agile development practices. It has been adopted by nearly all the Agile methods and there is documented evidence that it has reduced defect rates by a factor of ten.
This 3-day course teaches you how to use the principles and practices of TDD to specify requirements and designs using acceptance tests and unit tests. You will learn the intensely granular TDD approach to development using XUnit for unit testing and FitNesse for acceptance testing. You will experience the frequent and regular feedback and progress of letting tests drive the development and design. And you will discover just how much faster you can go by writing tests!
The principles of good object-oriented design are emphasized throughout. You will learn how to keep your designs clean and simple by applying those design principles through refactorings that are verified by your tests. You will learn to incrementally transform complex and difficult modules into readable, well-structured, and well-designed code, while keeping them running at all times.
As
you participate in our hands-on environment, you will learn how to
approach design from the outside-in; one test case at a time, driving
the system to better and simpler designs and architectures while it
continues to pass all its tests. You will learn how unit tests and
acceptance tests can be used to incrementally grow well-factored
systems that are easy to maintain.
Objectives
By the end of this course, you will be able to:
- Recognize poor code constructs
- Improve designs in small safe steps
- Use the JUnit framework
- Use "intention" to drive object interface design
- Perform test -first programming of object clusters
- Know how and when to use Mock objects and other testing patterns
- Know how and when to refactor when growing systems test-first
- Write executable requirements
- Understand Unit and Acceptance Tests
- Write Acceptance Tests using FitNesse
- Keep the system running
Prerequisites
Familiar with Java
Registration:
- The price includes food, snacks, and course material.
- Cancellation may be done without penalty up to 1 month before the course starts.
- Cancellation later than one month before the course starts may require full payment.
- Course registration may be transferred to another person.
Test-Driven Development & Refactoring Techniques
Date:
September, 15-17
09:00 - 17:00
(breakfast from 08:30)
Language:
English
Teacher:
Michael Feathers
Location:
Stockholm
Price:
17 400 SEK excl. VAT
Contact:
academy@crisp.se
+46 8 556 950 15