TDD for Embedded C++
2018-11-29 21:01:34 UTC
Most useful learnings:
Increased use of interfaces will be very helpful, even if they are just to split untested classes into a true implementation and a spy. This should allow tests to be introduced to legacy code with lower risk.
Honorable mention: Using test doubles to emulate hardware/the OS.
Concepts v exercises:
Presentation v discussion:
While the balance of presentation/discussion and exercises was good, I would have preferred that the exercises be smaller and more frequent (as opposed to a single 2.5 hour block). Concrete examples of adding tests to legacy code would also have been helpful.
The exercises from day 1 and 2 could be shortened a bit. The point of each exercise was made clear long before the 2.5 hour window ran out.
No. I first need to spend some time convincing other developers that adding tests to our legacy code is worth the risk and effort if done correctly.
Challenges to applying:
There is strong reticence on our to refactor legacy code, especially among the senior developers.
Legacy code workshop:
Recommend to others: