Automated Testcase Generation for Numerical Support Functions in Embedded Systems

  • Johann Schumann
  • Stefan-Alexander Schneider
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8430)

Abstract

We present a tool for the automatic generation of test stimuli for small numerical support functions, e.g., code for trigonometric functions, quaternions, filters, or table lookup. Our tool is based on KLEE to produce a set of test stimuli for full path coverage. We use a method of iterative deepening over abstractions to deal with floating-point values. During actual testing the stimuli exercise the code against a reference implementation. We illustrate our approach with results of experiments with low-level trigonometric functions, interpolation routines, and mathematical support functions from an open source UAS autopilot.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
  2. 2.
    Intl. standard ISO 26262 Road Vehicles – functional safety 1st edn. (2011)Google Scholar
  3. 3.
    RTCA: DO-178C: Software considerations in airborne systems and equipment certification (2011)Google Scholar
  4. 4.
    Hart, J.F., Cheney, E.W., Lawson, C.L., Maehly, H.J., Mesztenyi, C.K., Rice, J.R., Thacher, J.H.G., Witzgall, C.: Computer Approximations. SIAM Series in Applied Mathematics. John Wiley and Sons (1968)Google Scholar
  5. 5.
    Cadar, C., Dunbar, D., Engler, D.R.: KLEE: Unassisted and automatic generation of high-coverage tests for complex systems programs. In: 8th USENIX Symp. on Operating Systems Design and Implementation, OSDI, pp. 209–224 (2008)Google Scholar
  6. 6.
    Collingbourne, P., Cadar, D., Kelly, P.: Symbolic Crosschecking of Floating-Point and SIMD Code. In: EuroSys (2011)Google Scholar
  7. 7.
    IEEE standard 754 for floating-point arithmetic (2008)Google Scholar
  8. 8.
    Overton, M.L.: Numerical computing with IEEE floating point arithmetic - including one theorem, one rule of thumb, and 101 exercises. SIAM (2001)Google Scholar
  9. 9.
    Huckle, T., Schneider, S.A.: Numerische Methoden: Eine Einführung für Informatiker, Naturwissenschaftler, Ingenieure und Mathematiker. Springer (2006)Google Scholar
  10. 10.
    Giannakopoulou, D., Bushnell, D.H., Schumann, J., Erzberger, H., Heere, K.: Formal testing for separation assurance. Annals of Mathematics and Artificial Intelligence 63, 5–30 (2011)CrossRefMATHGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Johann Schumann
    • 1
  • Stefan-Alexander Schneider
    • 2
  1. 1.Inc./ NASA AmesSGTMoffett FieldUSA
  2. 2.Schneider System ConsultingMünchenGermany

Personalised recommendations