Full-On Test-Driven Development of Embedded Software

A session at SPA 2012

  • Immo Hüneke

Monday 2nd July, 2012

1:15pm to 4:15pm (GMT)

One-line description: Hands-on TDD of C and C++ examples using different unit test frameworks

Session format: Tutorial (150 mins) [read about the different session types]

Abstract:Test driven development (TDD) is a technique that emerged as one of the fundamental technical practices of Extreme Programming (XP). It is therefore often wrongly assumed that it can only be applied to Java and dynamic languages, but with the right framework I have found that it is equally applicable in just about any language - even graphical "languages" such as Datastage mappings.

In this tutorial, I want to provide an introduction to TDD for embedded software - typically written in C and C++ for device drivers, controllers and so on in sometimes very demanding environments (e.g. safety critical, real-time, or highly resource-constrained). The exercises will involve using frameworks such as Unity, CppUnit and CppUtest to develop a series of library components.

The techniques covered will include

  • test case selection
  • refactoring
  • stubs
  • mock objects

If time permits, we will also take a look at a couple of static analysis tools to see how these can complement the dynamic test frameworks.

Audience background: Basic familiarity with C and C++ or similar languages such as Java is assumed. Ideally, participants will be familiar with the Eclipse IDE.

Benefits of participating: Participants will know how to apply TDD to embedded software and have a feel for the "cadence" - how long it takes to go round the TDD loop once and how long to develop a fully working and tested component.

Materials provided:- Pre-installed Eclipse IDE with the tools required for the exercise
- Prepared example development tasks of increasing difficulty
- Model solutions
- References for further reading; where to obtain the tools

Process: After a brief introduction, participants will mainly work in pairs on the example exercises. I anticipate that the exercises will take progressively longer. There should be a short retrospective at the end of each.

About the speaker

This person is speaking at this event.
Immo Hüneke

Sign in to add slides, notes or videos to this session

SPA 2012

England England, London

1st4th July 2012

Tell your friends!


Time 1:15pm4:15pm GMT

Date Mon 2nd July 2012

Short URL


View the schedule


See something wrong?

Report an issue with this session