Skip to main content

A Generic Testing Framework for Test Driven Development of Robotic Systems

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNISA,volume 9055))

Abstract

This paper proposes a generic framework for test driven development of robotic systems. The framework provides functionalities for developing and running unit tests in a language and middleware independent manner. Tests are developed as independent plug-ins to be loaded and executed by an automated tool. Moreover, a fixture manager prepares the setup (e.g., running robot drivers or simulator) and actively monitors that all the required resources are available before and during the execution of the tests. These functionalities effectively accelerate the development process and cover different levels of robotic system testing. The paper describes the framework and provides realistic examples to show how it has been used to support software development on our robotic platform.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    The source code and documentation of the RTF can be accessed on-line at http://robotology.github.io/robot-testing/index.html.

  2. 2.

    In YARP data from generic sensors are published and read from Port objects. BufferedPort is a specialization of Port that support streaming operations.

  3. 3.

    Please refer to http://wiki.icub.org/yarpdoc/yarpmanager.html for the structure and syntax of the YARP application description file.

  4. 4.

    Please refer to http://robotology.github.io/robot-testing/documentation/testrunner.html for the documentation of the test runner.

References

  1. Abran, A., Bourque, P., Dupuis, R., Moore, J.W.: Guide to the Software Engineering Body of Knowledge-SWEBOK. IEEE Press, Piscataway (2001)

    Google Scholar 

  2. AdaCore: Ada unit testing framework (2012). http://libre.adacore.com/tools/aunit

  3. Beck, K.: Test-driven Development: by Example. Addison-Wesley Professional, Boston (2003)

    Google Scholar 

  4. Bruyninckx, H.: Open robot control software: the OROCOS project. In: IEEE International Conference on Robotics and Automation. vol. 3, pp. 2523–2528. IEEE (2001)

    Google Scholar 

  5. freedesktop: cppUnit test framework (2013). http://freedesktop.org/wiki/Software/cppunit

  6. Garrett, J.J., et al.: Ajax: A new approach to web applications (2005)

    Google Scholar 

  7. Google: Google C++ Testing Framework (2013). http://code.google.com/p/googletest

  8. Ierusalimschy, R., De Figueiredo, L.H., Celes Filho, W.: Lua-an extensible extension language. Softw. Pract. Experience 26(6), 635–652 (1996)

    Article  Google Scholar 

  9. Janzen, D., Saiedian, H.: Test-driven development: concepts, taxonomy, and future direction. Computer 9, 43–50 (2005)

    Article  Google Scholar 

  10. Link, J.: Unit testing in Java: How Tests Drive the Code. Morgan Kaufmann, San Francisco (2003)

    Google Scholar 

  11. Meszaros, G.: xUnit Test Patterns: Refactoring Test Code. Pearson Education, Boston (2007)

    Google Scholar 

  12. Metta, G., Fitzpatrick, P., Natale, L.: Towards Long-Lived Robot Genes. Elsevier, Amsterdam (2007)

    Google Scholar 

  13. Metta, G., Sandini, G., Vernon, D.: The iCub humanoid robot: an open platform for research in embodied cognition. In: Proceedings of the 8th Workshop on Performance Metrics for Intelligent Systems, pp. 50–56 (2008)

    Google Scholar 

  14. Paikan, A.: yarpmanager: a way of running and managing multiple programs on a set of machines (2011). http://wiki.icub.org/yarpdoc/yarpmanager.html

  15. Quigley, M., Conley, K., Gerkey, B.P., Faust, J., Foote, T., Leibs, J., Wheeler, R., Ng, A.Y.: Ros: an open-source robot operating system. In: ICRA Workshop on Open Source Software (2009)

    Google Scholar 

Download references

Acknowledgments

The research leading to these results has received funding from the European FP7 ICT project No. 611832 (WALK-MAN) and No. 600716 (CoDyCo).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ali Paikan .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Paikan, A., Traversaro, S., Nori, F., Natale, L. (2015). A Generic Testing Framework for Test Driven Development of Robotic Systems. In: Hodicky, J. (eds) Modelling and Simulation for Autonomous Systems. MESAS 2015. Lecture Notes in Computer Science(), vol 9055. Springer, Cham. https://doi.org/10.1007/978-3-319-22383-4_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-22383-4_17

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-22382-7

  • Online ISBN: 978-3-319-22383-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics