Programming and Computer Software

, Volume 29, Issue 6, pp 310–322 | Cite as

The UniTesK Approach to Designing Test Suites

  • V. V. Kuliamin
  • A. K. Petrenko
  • A. S. Kossatchev
  • I. B. Burdonov


Principles of the UniTesK test development technology based on the use of formal models of target software are presented. This technology was developed by the RedVerst group in the Institute for System Programming, Russian Academy of Sciences (ISPRAS) [1], which obtained rich experience in testing and verification of complex commercial software.


Operating System Artificial Intelligence Development Technology Formal Model Commercial Software 
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. Scholar
  2. 2.
    Meyer, B., Applying“Design by Contract,” IEEE Computer, 1992, vol. 25, no. 10, pp. 40-51.Google Scholar
  3. 3.
    Meyer, B., Object-Oriented Software Construction, Prentice Hall, 1997, Second edition.Google Scholar
  4. 4.
    Meyer, B., Eiffel: The Language, Prentice Hall, 1992.Google Scholar
  5. 5.
    Peters, D. and Parnas, D. Using Test Oracles Generated from Program Documentation, IEEE Transactions on Software Engineering, 1998, vol. 24, no. 3, pp. 161-173.Google Scholar
  6. 6.
    Bourdonov, I., Kossatchev, A., Petrenko, A., and Gaiter, D., KVEST: Automated Generation of Test Suites from Formal Specifications, Proc. of FM'99, Lect. Notes Comput. Sci., Springer-Verlag, 1999, vol. 1708, pp. 608-621.Google Scholar
  7. 7.
    Obayashi, M., Kubota, H., McCarron, S.P., and Mallet, L., The Assertion Based Testing Tool for OOP: ADL2, Scholar
  8. 8.
    Kossatchev, A., Petrenko, A., Zelenov, S., and Zelenova, S., Using Model-Based Approach for Automated Testing of Optimizing Compilers, Proc. Int. Workshop on Program Understanding, Gorno-Altaisk, 2003.Google Scholar
  9. 9.
    Bourdonov, L., Kossatchev, A., Kuliamin, V., and Petrenko, A., UniTesK Test Suite Architecture, Proc. of FME 2002, Lect. Notes Comput. Sci., Springer-Verlag, 2002, vol. 2391, pp. 77-88.Google Scholar
  10. 10.
    Zafiropulo, P., West, C.H., Rudin, H., Cowan, D.D., and Brand, D., Towards Analysing and Synthesizing Protocols, IEEE Trans. Commun., 1980, vol. 28, no. 4, pp. 651-660.Google Scholar
  11. 11.
    Chilenski, J.J. and Miller, S.P., Applicability of modified condition/decision coverage to software testing, Software Eng. J., 1994, September, pp. 193-200.Google Scholar
  12. 12.
    Bourdonov, I.B., Kossatchev, A.S., and Kuliamin, V.V., Application of Finite Automata to Program Testing, Programmirovanie, 2000, no. 2, pp. 61-73.Google Scholar
  13. 13.
    Lee, D. and Yannakakis, M., Principles and Methods of Testing Finite-State Machines: A Survey, Proc. IEEE, 1996, vol. 84, no. 8, pp. 1090-1123.Google Scholar
  14. 14.
    von Bochmann, G. and Petrenko, A., Protocol Testing: Review of Methods and Relevance for Software Testing, Proc. ACM Int. Symp. on Software Testing and Analysis, Seattle, 1994, pp. 109-123.Google Scholar
  15. 15.
    Bourdonov, I.B., Kossatchev, A.S., and Kuliamin, V.V., Irredundant Algorithms for Traversing Directed Graphs: The Deterministic Case, Programmirovanie, 2003, no. 5, pp. 11-30.Google Scholar
  16. 16.
    Fujiwara, S. and von Bochmann, G., Testing Nondeterministic Finite State Machine with Fault Coverage, Kroon, J., Heijink, R.J., and Brinksma, E., Eds., Proc. IFIP TC6 Fourth Int. Workshop on Protocol Test Systems, 1991, North-Holland, 1992, pp. 267-280.Google Scholar
  17. 17.
    Bourdonov, I.B., Kossatchev, A.S., and Kuliamin, V.V., Irredundant Algorithms for Traversing Directed Graphs: The Deterministic Case, Programmirovanie (in press).Google Scholar
  18. 18. Scholar
  19. 19.
    Kramer, R., iContract-The Java Design by Contract Tool, Proc. of TOOLS26: Technology of Object-Oriented Languages and Systems, IEEE Computer Society, 1998, pp. 295-307.Google Scholar
  20. 20. Scholar
  21. 21. Scholar
  22. 22.
    Bhorkar, A., A Run-time Assertion Checker for Java using JML, Techn. Report 00-08, Department of Computer Science, Iowa State University, 2000.Google Scholar
  23. 23. leavens/JML.html.Google Scholar
  24. 24.
    Karaorman, M., Holzle, U., and Bruno, J., jContractor: A Reflective Java Library to Support Design by Contract, Techn. Report TRCCS98-31, University of California, Santa Barbara, Computer Science, January 19, 1999.Google Scholar
  25. 25. Scholar
  26. 26.
    Bartetzko, D., Fisher, C., Moller, M., and Wehrheim, H., Jass-Java with Assertions, Proc. of the First Workshop on Runtime Verification RV'O1, Havelund, K. and Rosu, G., Eds., Electronic Notes in Theoretical Computer Science, Elsevier Science, 2001, vol.55.Google Scholar
  27. 27. Scholar
  28. 28.
    Duncan, A. and Hlzle, U., Adding Contracts to Java with Handshake, Techn. Report TRCS98-32, University of California, Santa Barbara, 1998.Google Scholar
  29. 29.
    Muller, P., Meyer, J., and Poetzsch-Heffter, A., Making Executable Interface Specifications More Expressive, JIT'99 Java-Informations-Tage 1999, Cap, C.H., Ed., Informatik Aktuell, Springer-Verlag, 1999.Google Scholar
  30. 30.
    Barneit, M. and Schulte, W., Contracts, Components, and Their Runtime Verification on the NET Platform, Techn. Report TR-2001-56, Microsoft Research.Google Scholar
  31. 31.
    Baresi, L. and Young, M., Test Oracles, Techn. Report CISTR-01-02, oracles.html.Google Scholar
  32. 32.
    Ball, T. and Rajamani, S., SLIC: A Specification Language for Interface Checking (of C), Techn. Report MSR-TR-2001-21, Microsoft Research, 2002.Google Scholar
  33. 33. Scholar
  34. 34. Scholar
  35. 35.
    Boyapati, C., Khurshid, S., and Marinov, D., Korat: Automated Testing Based on Java Predicates, Proc. of ISSTA 2002, Rome, 2002.Google Scholar
  36. 36. Scholar
  37. 37. Scholar
  38. 38.
    Heitmeyer, C., Software Cost Reduction, Encyclopedia of Software Engineering, Marciniak, J.J., Ed., 2 vols., 2002.Google Scholar
  39. 39. Scholar
  40. 40.
    Ellsberger, J., Hogrefe, D., and Sarma, A., SDL-Formal Object-Oriented Language for Communicating Systems, Prentice Hall, 1997.Google Scholar
  41. 41.
    ITU-T Recommendation Z.100: Specification and Description Language (SDL), Geneva: ITU-T, 1996.Google Scholar
  42. 42.
    ITU-T Recommendation Z.100 Annex Fl: SDL formal definition-General, Geneva: ITU-T, 2000.Google Scholar
  43. 43.
    Information Processing Systems: Open Systems Interconnection-LOTOS-A Formal Description Technique Based on the Temporal Ordering of Observational Behaviour, ISO/IEC 8807:1989, Geneva, 1989.Google Scholar
  44. 44.
    ISO/TC97/SC21. Information Processing Systems: Open Systems Interconnection-Estelle-A Formal Description Technique Based on an Extended State Transition Model, ISO 9074:1997, Geneva, 1997.Google Scholar
  45. 45.
    Berry, G., The Foundations of Esterel, Proof, Language and Interaction: Essays in Honour of Robin Milner, Plotkin, G., Stirling, C., and Tofte, M., Eds., MIT Press, 1998.Google Scholar
  46. 46.
    Boussinot, F. and de Simone, R., The Esterel Language, Proc. IEEE, 1991, vol. 79, pp. 1293-1304.Google Scholar
  47. 47.
    47. Halbwachs, N., Caspi, P., Raymond, P., and Pilaud, D., The Synchronous Data Flow Programming Language LUSTRE, Proc. IEEE, 1991, vol. 79, pp. 1305-1320.Google Scholar
  48. 48.
    Grabowski, J., Hogrefe, D., and Nahm, R., Test case generation with test purpose specification by MSCs, 6th SDL Forum, Faergemand, O. and Sarma, A., Eds., Darmstadt, Germany: North-Holland, 1993, pp. 253-266.Google Scholar
  49. 49.
    Wang, C.J. and Liu, M.T., Automatic Test Case Generation for Estelle, Int. Conf. on Network Protocols, San Francisco, 1993, pp. 225-232.Google Scholar
  50. 50.
    Caravel, H., Lang, F., and Mateescu, R., An overview of CADP 2001, INRIA Techn. Report TR-254, 2001.Google Scholar
  51. 51.
    Fernandez, J.-C., Jard, C., Jeron, T., and Viho, C., An Experiment in Automatic Generation of Test Suites for Protocols with Verification Technology, Special Issue on Industrially Relevant Applications of Formal Analysis Techniques, Groote, J.F. and Rem, M., Eds., Elsevier Science, 1996.Google Scholar
  52. 52.
    Tretmans, J. and Belinfante, A., Automatic Testing with Formal Methods, EuroSTAR'99: 7th European Int. Conf. on Software Testing: Analysis and Review, Barcelona, 1999, EuroStar Conferences, Galway, Ireland, Techn. Report TRCTIT-17, Centre for Telematics and Information Technology, University of Twente.Google Scholar
  53. 53.
    Bourhfir, C., Aboulhamid, E., Dssouli, R., and Rico, N., A Test Case Generation Approach for Conformance Testing of SDL Systems, Computer Commun., 2001, vol. 24, nos. 3-4, pp. 319-333.Google Scholar
  54. 54.
    Chun, W. and Amer, P.D., Test Case Generation for Protocols Specified in Estelle, Formal Description Techniques III, Que-mada, J., Manas, J., and Vazquez, E., Eds., Madrid: North-Holland, 1990, pp. 191-206.Google Scholar
  55. 55.
    Farchi, E., Hartman, A., and Pinter, S.S., Using a Modelbased Test Generator to Test for Standard Conformance, IBM Syst. J., 2002, vol. 41, no. 1, pp. 89-110.Google Scholar
  56. 56. documentation.html.Google Scholar
  57. 57.
    Gronau, L., Hartmair, A., Klrshin, A., Nagin, K., and Olvovsky, S., A Methodology and Architecture for Automated Software Testing, projects/verification/gtcb/papers/gtcbmanda.pdf.Google Scholar
  58. 58. Scholar
  59. 59.
    Grieskamp, W., Gurevich, Y., Schulte, W., and Veanes, M., Testing with Abstract State Machines, Moreno-Diaz, R. and Quesada-Arencibia, A., Eds., Formal Methods and Tools for Computer Science (Proc. of Eurocast 2001), Universidad de Las Palmas de Gran Canaria, Canary Islands, Spain, 2001, pp. 257-261.Google Scholar
  60. 60. Scholar
  61. 61. Scholar
  62. 62.
    Gurevich, Y., Evolving Algebras: An Attempt to Discover Semantics, Current Trends in Theoretical Computer Science, Rozenberg, G. and Salomaa, A., Eds., World Scientific, 1993, pp. 266-292.Google Scholar
  63. 63.
    Borger, E. and Stark, R., Abstract State Machines: A Method for High-Level System Design and Analysis, Springer-Verlag, 2003.Google Scholar
  64. 64.
    Friedman, G., Hartman, A., Nagin, K., and Shiran, T., Projected State Machine Coverage for Software Testing, Proc. of ISSTA 2002, Rome, 2002.Google Scholar
  65. 65.
    Grieskamp, W., Gurevich, Y., Schulte, W., and Veanes, M., Generating Finite State Machines from Abstract State Machines, Proc. of ISSTA'2002, Techn. Report, MSRTR-2001-97, Microsoft ResearchGoogle Scholar
  66. 66. Scholar
  67. 67. Scholar
  68. 68.
    Bourdonov, I.B., Demakov, A.V., Jarov, A.A., Kossatchev, A.S., Kuliamin, V.V., Petrenko, A.K., and Zelenov, S.V., Java Specification Extension for Automated Test Development, Proc. of PSI'O1,Lect. Notes Comput. Sci., Springer-Verlag, 2001, vol. 2244, pp. 301-307.Google Scholar
  69. 69. Scholar
  70. 70. Papers/ MSRIPv6 Verification Project/Main.html.Google Scholar
  71. 71.
    Kuliamin, V., Petrenko, A., Pakoulin, N., Kossatchev, A., and Bourdonov, I., Integration of Functional and Timed Testing of Real-time and Concurrent Systems, Proc. of PSI'03, Novosibirsk, 2003.Google Scholar

Copyright information

© MAIK “Nauka/Interperiodica” 2003

Authors and Affiliations

  • V. V. Kuliamin
    • 1
  • A. K. Petrenko
    • 1
  • A. S. Kossatchev
    • 1
  • I. B. Burdonov
    • 1
  1. 1.Institute for System Programming, Russian Academy of SciencesMoscowRussia

Personalised recommendations