Advertisement

Software & Systems Modeling

, Volume 18, Issue 2, pp 865–888 | Cite as

Temporal property patterns for model-based testing from UML/OCL

  • Frédéric DadeauEmail author
  • Elizabeta Fourneret
  • Abir Bouchelaghem
Theme Section Paper

Abstract

This article describes a new property- and model-based testing approach using UML/OCL models, driven by temporal property patterns and a tool for assisting the temporal properties formalization. The patterns are expressed in the TOCL language, an adaptation of Dwyer’s property patterns to OCL. The patterns are used to formalize temporal requirements without having to learn a complex temporal logics such as LTL or CTL. From these properties, automata are automatically computed. These can be used for two purposes. First, it is possible to evaluate the quality of a test suite by measuring the coverage of a property using its associated automaton. Second, the automaton can be used to drive the test generation in order to produce complementary test cases. To this end, we defined dedicated coverage criteria, targeting specific events of the property, and aiming either at illustrating the expected behaviour of the system, or checking its robustness w.r.t. the property. However, it was observed that the semantics of the property language may be more subtle that it seems. To facilitate the adoption of the language by industrials, we have proposed a tool-supported assistant for property design, aiming to help the validation engineer choosing which constructs faithfully correspond to his intention. This approach has been experimented on several case studies with industrial partners. It has shown its interest for software validation, providing useful information thanks to adequate traceability features.

Keywords

Behavioural model Property patterns Coverage measure Test generation Property design 

References

  1. 1.
    Beizer, B.: Black-Box Testing: Techniques for Functional Testing of Software and Systems. Wiley, New York (1995)Google Scholar
  2. 2.
    Utting, M., Pretschner, A., Legeard, B.: A taxonomy of model-based testing approaches. Softw. Test. Verif. Reliab. 22(5), 297–312 (2012)CrossRefGoogle Scholar
  3. 3.
    Warmer, J., Kleppe, A.: The Object Constraint Language Second Edition: Getting Your Models Ready for MDA. Addison-Wesley, Reading (2003)Google Scholar
  4. 4.
    Masson, P.-A., Potet, M.-L., Julliand, J., Tissot, R., Debois, G., Legeard, B., Chetali, B., Bouquet, F., Jaffuel, E., Van Aertrick, L., Andronick, J., Haddad, A.: An access control model based testing approach for smart card applications: results of the POSÉ project. JIAS 5(1), 335–351 (2010)Google Scholar
  5. 5.
    Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: ICSE’99: proceedings of the 21st International Conference on Software Engineering, pp. 411–420. IEEE Computer Society Press, Los Alamitos (1999)Google Scholar
  6. 6.
    Falcone, Y., Mounier, L., Fernandez, J.-C., Richier, J.-L.: j-POST: a java toolchain for property-oriented software testing. Electron. Notes Theor. Comput. Sci. 220(1), 29–41 (2008)CrossRefGoogle Scholar
  7. 7.
    Kanso, B., Taha, S.: Specification of temporal properties with ocl. Sci. Comput. Program. 96(P4), 527–551 (2014)CrossRefGoogle Scholar
  8. 8.
    Taha, S., Julliand, J., Dadeau, F., Castillos, K.C., Kanso, B.: A compositional automata-based semantics and preserving transformation rules for testing property patterns. Form. Asp. Comput. 27(4), 641–664 (2015)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Bouquet, F., Grandpierre, C., Legeard, B., Peureux, F., Vacelet, N., Utting, M.: A subset of precise UML for model-based testing, In: A-MOST’07, 3rd International Workshop on Advances in Model Based Testing, pp. 95–104. ACM Press, London (2007)Google Scholar
  10. 10.
    Castillos, K., Cabrera, D.F., Julliand, J., Kanso, B., Taha, S.: A compositional automata-based semantics for property patterns. In: Johnsen, E., Petre, L. (eds.) iFM’2013, 10th International Conference on Integrated Formal Methods, vol. 7940 of LNCS, pp. 316–330. Springer, Turku (2013)Google Scholar
  11. 11.
    Huang, J.C.: An approach to program testing. ACM Comput. Surv. 7(3), 113–128 (1975)CrossRefzbMATHGoogle Scholar
  12. 12.
    DeMillo, R.A.: Test adequacy and program mutation. In: ICSE, pp. 355–356 (1989)Google Scholar
  13. 13.
    Botella, J., Bouquet, F., Capuron, J.-F., Lebeau, F., Legeard, B., Schadle, F.: Model-based testing of cryptographic components—lessons learned from experience. In: ICST’13, 6th IEEE International Conference on Software Testing, Verification and Validation, pp. 192–201 (2013)Google Scholar
  14. 14.
    McNaughton, R., Yamada, H.: Regular expressions and state graphs for automata. IEEE Trans. Electron. Comput. 9, 39–47 (1960)CrossRefzbMATHGoogle Scholar
  15. 15.
    Common criteria for information technology security evaluation, version 3.1 (2009)Google Scholar
  16. 16.
    Rouillard, D.: Tasccc Project-Deliverable 5.4—Report on the Integration of the Ate Requirements, Tech. Rep., Serma Technologies (2012)Google Scholar
  17. 17.
    Brucker, A.D., Krieger, M.P., Longuet, D., Wolff, B.: A specification-based test case generation method for uml/ocl. In: Proceedings of the 2010 International Conference on Models in Software Engineering, MODELS’10, pp. 334–348. Springer, Berlin (2011)Google Scholar
  18. 18.
    Benattou, M., Bruel, J.-M., Hameurlain, N.: Generating test data from ocl specification. In: Proceedings of the ECOOP Workshop Integration and Transformation of UML Models (2002)Google Scholar
  19. 19.
    Aertryck, L.V., Jensen, T.: Uml-casting: test synthesis from uml models using constraint resolution. In: AFADL’2003 (2003)Google Scholar
  20. 20.
    Ali, S., Iqbal, M.Z., Arcuri, A., Briand, L.C.: Generating test data from ocl constraints with search techniques. IEEE Trans. Softw. Eng. 39(10), 1376–1402 (2013)CrossRefGoogle Scholar
  21. 21.
    Wittevrongel, J., Maurer, F.: Scentor: scenario-based testing of e-business applications. In: WETICE ’01: Proceedings of the 10th IEEE International Workshops on Enabling Technologies, pp. 41–48. IEEE Computer Society, Washington (2001)Google Scholar
  22. 22.
    Ryser, J., Glinz, M.: A practical approach to validating and testing software systems using scenarios. In: 3rd Software Quality Week Europe (1999)Google Scholar
  23. 23.
    Tsai, W.T., Saimi, A., Yu, L., Paul, R.: Scenario-based object-oriented testing framework. In: International Conference on Quality Software, p. 410. IEEE Computer Society, Los Alamitos (2003)Google Scholar
  24. 24.
    Binder, R.V.: Testing Object-Oriented Systems: Models, Patterns, and Tools. Addison-Wesley Longman Publishing Co.,Inc, Boston (1999)Google Scholar
  25. 25.
    Krenn, W., Schlick, R., Tiran, S., Aichernig, B., Jobstl, E., Brandl, H.: Momut::uml model-based mutation testing for uml. In: 2015 IEEE 8th International Conference on Software Testing, Verification and Validation (ICST), pp. 1–8 (2015)Google Scholar
  26. 26.
    Peleska, J., Vorobev, E., Lapschies, F.: Automated test case generation with smt-solving and abstract interpretation. In: Bobaru, M.G., Havelund, K., Holzmann, G.J., Joshi, R. (eds.) NASA Formal Methods—Third International Symposium, NFM 2011, vol. 6617 of Lecture Notes in Computer Science, pp. 298–312. Springer (2011)Google Scholar
  27. 27.
    Gargantini, A., Heitmeyer, C.: Using model checking to generate tests from requirements specifications. In: Proceedings of the Joint 7th Eur. Software Engineering Conference and 7th ACM SIGSOFT International Symposium on Foundations of Software Engineering (1999)Google Scholar
  28. 28.
    Tan, L., Sokolsky, O., Lee, I.: Specification-based testing with linear temporal logic. In: IRI’2004, IEEE International Conference on Information Reuse and Integration, pp. 413–498 (2004)Google Scholar
  29. 29.
    Amman, P., Ding, W., Xu, D.: Using a model checker to test safety properties. In: 7th International Conference on Engineering of Complex Computer Systems (ICECCS’01), p. 212. IEEE (2001)Google Scholar
  30. 30.
    Ammann, P.E., Black, P.E., Majurski, W.: Using model checking to generate tests from specifications. In: Proceedings Second International Conference on Formal Engineering Methods (Cat.No.98EX241), pp. 46–54 (1998)Google Scholar
  31. 31.
    Fraser, G., Wotawa, F.: Using model-checkers to generate and analyze property relevant test-cases. Softw. Qual. J. 16, 161–183 (2008)CrossRefGoogle Scholar
  32. 32.
    Auguston, M., Michael, J., Shing, M.-T.: Environment behavior models for scenario generation and testing automation, In: A-MOST’05: Proceedings of the 1st International Workshop on Advances in Model-Based Testing, pp. 1–6. ACM, New York (2005)Google Scholar
  33. 33.
    Carvalho, G., Barros, F., Lapschies, F., Schulze, U., Peleska, J.: Model-based testing from controlled natural language requirements. In: Artho, C., Ölveczky, P.C. (eds.) Formal Techniques for Safety-Critical Systems: Second International Workshop, FTSCS 2013, Queenstown, New Zealand, October 29–30, 2013. Revised Selected Papers, pp. 19–35. Springer International Publishing, Cham (2014)Google Scholar
  34. 34.
    Rusu, V., Marchand, H., Jéron, T.: Automatic verification and conformance testing for validating safety properties of reactive systems. In: Fitzgerald, J., Tarlecki, A., Hayes, I. (eds.) Formal Methods 2005 (FM05), LNCS. Springer (2005)Google Scholar
  35. 35.
    Hallal, H., Boroday, S., Ulrich, A., Petrenko, A.: An automata-based approach to property testing in event traces, In: Proceedings of the 15th IFIP International Conference on Testing of Communicating Systems, TestCom’03, pp. 180–196. Springer, Berlin (2003)Google Scholar
  36. 36.
    Tsai, W.-T., Yu, L., Zhu, F., Paul, R.: Rapid embedded system testing using verification patterns. IEEE Softw. 22(4), 68–75 (2005)CrossRefGoogle Scholar
  37. 37.
    Aichernig, B.K., Schumi, R.: Property-based testing with fscheck by deriving properties from business rule models. In: 2016 IEEE Ninth International Conference on Software Testing, Verification and Validation Workshops (ICSTW), pp. 219–228 (2016)Google Scholar
  38. 38.
    Dou, W., Bianculli, D., Briand, L.: Oclr: a more expressive, pattern-based temporal extension of ocl. In: Proceedings of the 10th European Conference on Modelling Foundations and Applications—volume 8569, pp. 51–66. Springer, New York (2014)Google Scholar

Copyright information

© Springer-Verlag GmbH Germany, part of Springer Nature 2017

Authors and Affiliations

  • Frédéric Dadeau
    • 1
    Email author
  • Elizabeta Fourneret
    • 1
    • 2
  • Abir Bouchelaghem
    • 1
  1. 1.CNRS UMR 6174, FEMTO-ST InstituteUniversity of Bourgogne Franche-ComtéBesançon CedexFrance
  2. 2.Smartesting Solutions & ServicesBesançon CedexFrance

Personalised recommendations