Skip to main content

An Approach and a Prototype Tool for Generating Executable IoT System Test Cases

  • Conference paper
  • First Online:

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 1266))

Abstract

Internet of Things (IoT) systems are becoming ubiquitous and assuring their quality is of paramount importance, especially in safety-critical contexts. Unfortunately, few quality assurance proposals are present in the literature.

In this paper, we propose an approach for semi-automated model-based generation of executable test cases, oriented to system-level acceptance testing of IoT systems. Our approach is supported by a prototype tool taking in input a UML model of the system under test and some additional artifacts, and produces in output a test suite that checks if the behavior of the system is compliant with such a model.

The empirical evaluation of the approach executed on a mobile health IoT system for diabetic patients – involving sensors, actuators, a smartphone, and a remote cloud system – shows that the test suite generated with our tool has been able to kill between 87% and 98% of the mutants (i.e., artificial bugged versions of the system under test).

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

References

  1. End-to-end testing for IoT integrity. Technical report. https://alm.parasoft.com/end-to-end-testing-for-iot-integrity

  2. ISO/IEC/IEEE 24765:2010(E) International Standard - Systems and Software Engineering - Vocabulary, pp. 1–418 (2010). https://doi.org/10.1109/IEEESTD.2010.5733835

  3. Ammann, P., Offutt, J.: Introduction to Software Testing. Cambridge University Press, Cambridge (2016)

    Book  Google Scholar 

  4. Friedman, G., Hartman, A., Nagin, K., Shiran, T.: Projected state machine coverage for software testing. SIGSOFT Softw. Eng. Notes 27(4), 134–143 (2002). https://doi.org/10.1145/566171.566192

    Article  Google Scholar 

  5. Gantait, A.: Test case generation and prioritization from UML models. In: Proceedings of 2nd International Conference on Emerging Applications of Information Technology, EAIT 2011, pp. 345–350. IEEE (2011)

    Google Scholar 

  6. Grün, B.J.M., Schuler, D., Zeller, A.: The impact of equivalent mutants. In: Proceedings of 2nd International Conference on Software Testing, Verification, and Validation Workshops, ICSTW 2009, pp. 192–199 (2009). https://doi.org/10.1109/ICSTW.2009.37

  7. Harman, M., Mansouri, S.A., Zhang, Y.: Search-based software engineering: trends, techniques and applications. ACM Comput. Surv. 45(1), 11:1–11:61 (2012). https://doi.org/10.1145/2379776.2379787

  8. Jia, Y., Harman, M.: An analysis and survey of the development of mutation testing. IEEE Trans. Softw. Eng. 37(5), 649–678 (2011). https://doi.org/10.1109/TSE.2010.62

    Article  Google Scholar 

  9. King, J.C.: Symbolic execution and program testing. Commun. ACM 19(7), 385–394 (1976). https://doi.org/10.1145/360248.360252

    Article  MathSciNet  MATH  Google Scholar 

  10. Korel, B.: Automated software test data generation. IEEE Trans. Softw. Eng. 16(8), 870–879 (1990). https://doi.org/10.1109/32.57624

    Article  Google Scholar 

  11. Leotta, M., et al.: An acceptance testing approach for Internet of Things systems. IET Softw. 12, 430–436 (2018). https://doi.org/10.1049/iet-sen.2017.0344

    Article  Google Scholar 

  12. Offutt, A.J., Untch, R.H.: Mutation 2000: uniting the orthogonal. In: Wong, W.E. (ed.) Mutation Testing for the New Century. ADBS, vol. 24, pp. 34–44. Springer, Boston (2001). https://doi.org/10.1007/978-1-4757-5939-6_7

    Chapter  Google Scholar 

  13. Stallbaum, H., Metzger, A., Pohl, K.: An automated technique for risk-based test case generation and prioritization. In: Proceedings of 3rd International Workshop on Automation of Software Test, AST 2008, pp. 67–70 (2008)

    Google Scholar 

  14. Tracey, N., Clark, J., Mander, K., McDermid, J.: An automated framework for structural test-data generation. In: Proceedings of the 13th IEEE International Conference on Automated Software Engineering, ASE 1998, p. 285. IEEE (1998)

    Google Scholar 

  15. Utting, M., Legeard, B.: Practical Model-Based Testing: A Tools Approach. Morgan Kaufmann Publishers Inc. (2007)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Dario Olianas .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Olianas, D., Leotta, M., Ricca, F. (2020). An Approach and a Prototype Tool for Generating Executable IoT System Test Cases. In: Shepperd, M., Brito e Abreu, F., Rodrigues da Silva, A., Pérez-Castillo, R. (eds) Quality of Information and Communications Technology. QUATIC 2020. Communications in Computer and Information Science, vol 1266. Springer, Cham. https://doi.org/10.1007/978-3-030-58793-2_31

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-58793-2_31

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-58792-5

  • Online ISBN: 978-3-030-58793-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics