Course Overview
Test-driven development (TDD) is a software development technique that relies on the repetition of a very short development cycle: First the developer writes a failing automated test case that defines a desired improvement or new function, then produces code to pass that test and finally refactors the new code to acceptable standards. Kent Beck, who is credited with having developed or 'rediscovered' the technique, stated in 2003 that TDD encourages simple designs and inspires confidence.
Test-driven development requires developers to create automated unit tests that define code requirements before writing the code itself. The tests contain assertions that are either true or false. Passing the tests confirms correct behavior as developers evolve and refactor the code. Developers often use testing frameworks to create and automatically run sets of test cases. Read
More.
Who Should Attend
This seminar will be useful to software developers, technical team leaders,
and managers that want to understand the technology they manage.
Learning Objectives
This two-day workshop, combining instructor-led discussion
with practice sessions and multiple group exercises, is a hands-on course that teaches the practice of Test Driven Development in C++. Topics covered, include:
- Test Driven Development - Why and What.
- The TDD Microcycle
- Testable Designs
- TDD and Collaborating Objects - testing the code in the middle
- Keeping Tests Clean
- Documentation value & Ease of Maintenance
- Intro to Refactoring
- Incremental Improvement
- Architectural Vision and Incremental Delivery
- Just Enough Design
- Vertical Slices
- Read the Full
Course Outline
Exercises:
This is a hands-on course features extensive exercises, including
- Exercise - Pairing with James
- Exercise - TDD from scratch
- Exercise - Collaborating Objects
- Exercise - Self-verifying Mock Objects
- Exercise - Clean up tests
- Exercise - Long Method
- Exercise - Feature Envy
- Exercise - Large Class
- Exercise - Duplicate conditional logic
Plus, receive valuable takeaways. The workshop
manual supplies full concept explanations and techniques used
within the course along with valuable examples
that you can use. This course will get you and your team well on the way to applying TDD to your C++ applications.
Note: Students are required to bring their own laptops to class.
Some comments from past participants:
“I was skeptical of TDD and had the concern that it would slow development down, but now I am sold 100% on TDD. Thanks again, the TDD training and your balanced look at agile / scrum was greatly appreciated!"
- Software Engineer
Read the Instructor Bio: James Grenning.
Register early and Save
$100. Benefit from 'early-bird' pricing on courses.
November 17-18 Vancouver, BC $1695
CAD Register
Read
information on payment,
cancellation policy and course locations.