Test-Case Generation for Embedded Binary Code Using Abstract Interpretation

Thomas Reinbacher, JöRg Brauer, Martin Horauer, Andreas Steininger & Stefan Kowalewski
This paper describes a framework for test-case generation for microcontroller binary programs using abstract interpretation techniques. The key idea of our approach is to derive program invariants a priori, and then use backward analysis to obtain test vectors that are executed on the target microcontroller. Due to the structure of binary code, the abstract interpretation framework is based on propositional encodings of the program semantics and SAT solving.