Fuzz testing for model-based embedded control software and vehicle software programs.
Fuzz testing validates software against a wider range of inputs and sequences than engineers can usually create by hand. At a high level, it sends randomised data to an embedded system over an extended period to uncover unexpected behaviours and edge cases.
When the system response changes, the fuzz testing harness examines the output to determine whether the system reacted correctly. Over time, this process can uncover unexpected behaviours and hard-to-find bugs.
Although the input sequences may appear completely random, fuzz testing often produces reproducible test cases that expose real bugs. Once identified, these cases can be generalised and added as unit tests.
We help teams to:
Although fuzz testing may seem unstructured, it is rarely wasted effort. In our experience, it almost always uncovers at least a few bugs.