TDD for Embedded C
2021-09-03 17:47:28 UTC
Most useful learnings:
Considerations around different kind of tests doubles. Which ones are available, and how to select an appropriate one.
Concepts v exercises:
Presentation v discussion:
The course is already very good. The only thing I could think of would be if some of the best parts of each teams exercises could be quickly highlighted at the end of the session, I am thinking that this could help boost confidence. I also feel that other testing techniques were not even mentioned. For instance fuzzing, Domain testing might be more appropriate for some embedded application like motor control. It would be good to include some information about other tools, and when they would be appliccable.
When "getting ahead of oneselves" in the exercise it was not always clear what the "problem" was.
Comes across very as knowlegable and hands on. The material is presented in a with an eye on practical application. Presentation is clear, and the answers to questions are always instructional, even if the question is off topic :-)
I will choose the right tasks to try it out. For instance I have 2 tasks on my back burner : Implement HW independent I2C driver for a sensor , and hook up some GPIO pinst to interrupt actions on a microcontroller. The former will be very well suited to TDD, but the latter not so much. I expect that to just work once I have done the correct device configuration. It will be fairly obvious if there is a defect, and time will better be spent on reporting a diagnostic error message if it should fail.
Challenges to applying:
We have much legacy code, and limited green field projects where we can gain the most experience from exercising TDD.
I think this was time well spendt, even if I was familiar with many of the concepts, it helped me crystalize some ideas on how to best approach our existing legacy code base.
Legacy code workshop:
Recommend to others: