Testing embedded systems
With the advent of IoT, this presentation makes the case for TDD and BDD in general and focuses on its use within embedded software development.
Test Driven Development (TDD) and Behaviour Driven Development (BDD) are established tools in the traditional IT realm and are at the core of the XP methodology.
This presentation incorporates these methodologies with the world of Embedded programming. Using TDD and BDD tools such as Unity and Cucumber, we'll explore how to develop and test software that runs on the target devices.
Using Unity, I'll show how unit tests can be run on target embedded devices as a better alternative to using simulators.
In addition, using the Cucumber gem, I will demonstrate how to use feature files in the context of working on embedded hardware projects and explain how to extend the framework using the Wire protocol to allow integration tests to run in-situ, which greatly enhances testing coverage compared to PC-based testing using emulators.