Last time I talked about how Test-Driven Development (TDD) is a better way to develop embedded software, and it’s particularly compelling these days because it makes remote work easier and more effective.

I’ll be going into more detail in coming posts, but for now, here are three excellent resources to help you learn about TDD and how to apply it in practice. I have no affiliation with any of these creators.

No matter how you learn most effectively, there’s a solution just for you!

The Book

The bible for TDD for embedded software is titled, unsurprisingly, “Test-Driven Development for Embedded C”. The author, James Grenning, is a well-known figure in the agile software development world.

You can find out more about the book here, and purchase from Amazon here.

I have read this book, and highly recommend it.

The Online, self-paced, Video Courses

Mark VanderVoord and Mike Karlesky of Throw the Switch are developers of a suite of tools for unit testing: Unity, CMock, and Ceedling. They’ve put together two excellent video courses on Udemy that walk you through basic and intermediate-level test driven development.

I’ve taken both of these courses, and again, I can highly recommend them.


The Live (online or in-person) Training Course

James Grenning, the author of the book above, also gives online training workshops (in real time) in TDD for embedded systems. I haven’t taken this course myself, but it gets rave reviews, and I’m not surprised.


Good luck, help each other, and stay safe out there.