I offer a one day course in Test Driven Development (TDD) for embedded projects.

Course Content

  • TDD Microcycle
    • Write a test
    • Make sure it fails
    • Make it pass
    • Refactoring
  • Writing unit tests
    • Unit test phases
    • xUnit Test Frameworks
    • Outside-In vs. Inside-Out TDD
    • Test doubles
      • Stubs, spies and mocks
      • Dependency injection
      • Mock frameworks
      • Replace hardware with test doubles
  • Refactoring
    • Production code smells
    • Test code smells


  • Writing a driver for a CC3000 Wifi Module
  • Writing a driver for a HD44780 Hitachi LCD
  • Running unit tests in Jenkins

Exercises are written in C.

Development environment

The exercises are performed in a virtual machine running Lubuntu with the following software installed:

  • Eclipse IDE
  • gcc compiler
  • Unity Test Framework
  • CMock Mock Framework
  • Jenkins continuous integration server

VirtualBox must be installed to run the virtual machine. VirtualBox minimizes work with setting up the development environment.



  • 35000 SEK + VAT for 10 participants (i.e. 3500 SEK/participant)
  • Room facilities must be provided by the company buying the course
  • Participants must bring their own laptop with VirtualBox installed
  • Travel expenses apply if location is outside Gothenburg region