Generating Tests from EFSM Models Using Guided Model Checking and Iterated Search Refinement

  • Juhan-P. Ernits
  • Andres Kull
  • Kullo Raiend
  • Jüri Vain
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4262)


We present a way to generate test sequences from EFSM models using a guided model checker: Uppaal Cora. The approach allows to specify various structural test coverage criteria of EFSMs, for example, selected states/transitions, all transitions, all transition pairs, etc. We describe a method to construct Uppaal models to achieve test sequences satisfying these criteria and experiment with the search options of Uppaal to achieve test sequences that are suboptimal in terms of length. We apply a bitstate hashing space reduction based iterated search refinement method to shorten the length of test sequences with respect to the length gained using depth first search. The test generation method and different search strategies are compared by applying them on a stopwatch and INRES protocol based case study. The outcome shows the feasibility of applying guided model checking in conjunction with iterated search refinement for generating suboptimal test sequences.


Model Check Test Sequence Coverage Criterion Test Case Generation Iterate Search 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Hogrefe, D.: OSI-formal specification case study: The INRES protocol and service, Technical Report 91-012, University of Bern (1991)Google Scholar
  2. 2.
    Behrmann, G., Larsen, K.G., Rasmussen, J.I.: Priced Timed Automata: Algorithms and Applications. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2004. LNCS, vol. 3657, pp. 162–182. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  3. 3.
    Farchi, E., Hartman, A., Pinter, S.S.: Using a model-based test generator to test for standard conformance. IBM Systems Journal 41(1), 89–110 (2002)CrossRefGoogle Scholar
  4. 4.
    Edmund, M., Clarke, J., Grumberg, O., Peled, D.A.: Model checking. MIT Press, Cambridge (1999)Google Scholar
  5. 5.
    Hamon, G., de Moura, L., Rushby, J.: Generating efficient test sets with a model checker. In: 2nd International Conference on Software Engineering and Formal Methods, Beijing, China, pp. 261–270. IEEE Computer Society, Los Alamitos (2004)CrossRefGoogle Scholar
  6. 6.
    Bengtsson, J.: Clocks, DBMs and states in timed systems. PhD thesis (2002)Google Scholar
  7. 7.
    Larsen, K.G., Mikucionis, M., Nielsen, B., Skou, A.: Testing real-time embedded software using UPPAAL-TRON: an industrial case study. In: EMSOFT 2005: Proc. of the 5th ACM International Conference on Embedded Software, pp. 299–306. ACM Press, New York (2005)CrossRefGoogle Scholar
  8. 8.
    Blom, J., Hessel, A., Jonsson, B., Petterson, P.: Specifying and Generating Test Cases Using Observer Automata. In: Grabowski, J., Nielsen, B. (eds.) FATES 2004. LNCS, vol. 3395, pp. 125–139. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  9. 9.
    Hessel, A., Larsen, K.G., Nielsen, B., Petterson, P., Skou, A.: Time-optimal Real-Time Test Case Generation using Uppaal. In: Petrenko, A., Ulrich, A. (eds.) FATES 2003. LNCS, vol. 2931, pp. 114–130. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  10. 10.
    Hong, H.S., Lee, I., Sokolsky, O., Ural, H.: A Temporal Logic Based Theory of Test Coverage and Generation. In: Katoen, J.-P., Stevens, P. (eds.) TACAS 2002. LNCS, vol. 2280, pp. 327–341. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  11. 11.
    Gunter, E.L., Peled, D.: Model checking, testing and verification working together. Formal Asp. Comput. 17(2), 201–221 (2005)zbMATHCrossRefGoogle Scholar
  12. 12.
    Bourhfir, C., Dssouli, R., Aboulhamid, E., Rico, N.: Automatic executable test case generation for extended finite state machine protocols. In: Proceedings of the 10th International IFIP Workshop on Testing of Communicating Systems (IWTCS 1997), Cheju Islands, Korea, pp. 75–90. Chapman & Hall, Boca Raton (1997)Google Scholar
  13. 13.
    Mücke, T., Huhn, M.: Generation of optimized testsuites for UML statecharts with time. In: Groz, R., Hierons, R.M. (eds.) TestCom 2004. LNCS, vol. 2978, pp. 128–143. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  14. 14.
    Hessel, A., Larsen, K., Nielsen, B., Pettersson, P., Skou, A.: Time-optimal realtime test case generation using UPPAAL. In: Petrenko, A., Ulrich, A. (eds.) FATES 2003. LNCS, vol. 2931, pp. 114–130. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  15. 15.
    Chow, T.S.: Testing software design modeled by finite-state machines. IEEE Trans. Software Eng. 4(3), 178–187 (1978)CrossRefGoogle Scholar
  16. 16.
    Behrmann, G., David, A., Larsen, K.G.: A Tutorial on Uppaal. In: Bernardo, M., Corradini, F. (eds.) SFM-RT 2004. LNCS, vol. 3185, pp. 200–236. Springer, Heidelberg (2004), updated version available from: CrossRefGoogle Scholar
  17. 17.
    Holzmann, G.J.: An analysis of bitstate hashing. Form. Methods Syst. Des. 13(3), 289–307 (1998)CrossRefMathSciNetGoogle Scholar
  18. 18.
    Holzmann, G.J., Smith, M.H.: Automating software feature verification. Bell Labs Technical Journal 5(2), 72–87 (2000)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Juhan-P. Ernits
    • 1
    • 3
  • Andres Kull
    • 2
  • Kullo Raiend
    • 2
  • Jüri Vain
    • 1
    • 3
  1. 1.Dept. of Comp. Sci.Tallinn Univ. of TechnologyTallinnEstonia
  2. 2.ElviorTallinnEstonia
  3. 3.Inst. of CyberneticsTallinnEstonia

Personalised recommendations