TDD with C++, February 21-22, 2013

This course has already been held.

TDD with C++, February 21-22, 2013


TDD in C++

Join this hands-on workshop to learn how to  do incremental design with TDD while taking advantage of the strengths of C++. The two days will be interactive, featuring lots of exercises with feedback from the trainer, discussions and lectures on the theoretical topics.

Why TDD?

Test Driven Development (TDD) is a tool for obtaining simple & flexible designs in an incremental way. TDD can help you:

  • if you work in an environment where requirements change often and you need to implement them as fast as possible.
  • if you want to keep your skills up to date with the industry trends
  • if you want to learn more about design

What’s special about TDD in C++?

C++ is a complex language, allowing developers to take advantage of power and effectiveness of the system. Unfortunately, refactoring and writing tests is more complicated in C++ because there are less tools for it than for Java or C#. We therefore need to learn how to effectively refactor and how to write tests in the given context.

You will need a laptop with the development environment for C++ installed and working. It is highly recommended to have git (msysgit for Windows) installed.

Who this course is for

Software C++ developers

Learning outcomes for this course

  • What TDD is about
  • The real TDD cycle
  • How to start doing TDD on a new system
  • How to figure out the tests you need to write: behavior slicing
  • How to write tests so that your system is correct every 5-15 minutes
  • How to use refactoring to emerge designs

Depending on the audience, we might discuss:

  •  How to use stubs and mocks to isolate tests
  • How to test an arbitrarily large system effectively
  • Basics of dealing with legacy code
  • Architecture and TDD – when does architecture end and when does design start?

This course will not teach you how to use TDD on an existing system. We might discuss it for a short while, but we won’t get into details. If you would like to attend such a course, ask us for the legacy code workshop.

You will receive the slides and code samples after the course ends. The trainer will also recommend you learning resources – trainings, books, blogs etc. – to help you continue learning after the course ends.


For best results, you should be a software developer who can easily write C++ programs containing: concrete and abstract classes, inheritance, pointers and reference types.

  • Date: 2013-02-21
  • City: Stockholm
  • Language: English


DateFebruary 21-22, 2013 09.00 - 17.00/ 17.30 (Breakfast 08.30)
ParticipantsMax 20
VenueCrisps office, Sveavägen 31, Stockholm
Price17000, +46 8 556 950 15