Specification for Testing

  • Chris George
  • Padmanabhan Krishnan
  • P. A. P. Salas
  • J. W. Sanders
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4700)


The success of model-based testing, in automating the testing of an implementation given its state-based (or model-based) specification, raises the question of how best the specification can be tweaked in order to facilitate that process. This paper discusses several answers. Motivated by an example from web-based systems, and taking account of the restriction imposed by the testing interface, it considers both functional and non-functional properties. The former include laws, implicit system invariants and other consistency conditions whilst the latter include security leaks. It concludes that because of the importance of the link between specification and implementation in the testing process, there is a trade-off between genuinely useful testing information and the incorporation of some degree of information about the link, not normally regarded as part of the specification.


Test Case Generation Action Word Component Object Model Successful Login General Purpose Programming Language 
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.
    Aichernig, B.K.: Test-design through abstraction — A systematic approach based on the refinement calculus. Journal of Universal Computer Science 7(8), 710–735 (2001)Google Scholar
  2. 2.
    Binder, R.V.: Design for testability in object-oriented systems. Commun. ACM 37(9), 87–101 (1994)CrossRefGoogle Scholar
  3. 3.
    Boyapati, C., Khurshid, S., Marinov, D.: Korat: automated testing based on Java predicates. In: Proceedings of the International Symposium on Software Testing and Analysis (ISSTA 2002), Rome, Italy, pp. 22–24. IEEE, Los Alamitos (2002)Google Scholar
  4. 4.
    Broy, M., Jonsson, B., Katoen, J.-P., Leucker, M., Pretschner, A. (eds.): Model-Based Testing of Reactive Systems. LNCS, vol. 3472. Springer, Heidelberg (2005)zbMATHGoogle Scholar
  5. 5.
    Buwalda, H.: Action Figures. Software Testing and Quality Engineering, 42–47 (2003)Google Scholar
  6. 6.
    Buwalda, H., Kasdorp, M.: Getting automated testing under control. Software Testing and Quality Engineering, 39–44 (November/December, 1999)Google Scholar
  7. 7.
    Dick, J., Faivre, A.: Automating the generation and sequencing of test cases from model-based specifications. In: Larsen, P.G., Woodcock, J.C.P. (eds.) FME 1993. LNCS, vol. 670, pp. 268–284. Springer, Heidelberg (1993)CrossRefGoogle Scholar
  8. 8.
    Duke, R., Rose, G.: Formal Object-Oriented Specification Using Object-Z. Macmillan Press, NYC (2000)Google Scholar
  9. 9.
    El-Far, I.K., Whittaker, J.A.: Model-based software testing. In: Marciniak, J.J. (ed.) Encyclopedia of Software Engineering, vol. 1, pp. 825–837. Wiley-Interscience, Chichester (2002)Google Scholar
  10. 10.
  11. 11.
    Hayes, I.J.: Specification directed module testing. IEEE Transactions on Software Engineering, SE-12(1):124–133 (1986), See also the 2006 revision
  12. 12.
    Helke, S., Neustupny, T., Santen, T.: Automating test case generation from Z specifications with Isabelle. In: Till, D., Bowen, J.P., Hinchey, M.G. (eds.) ZUM 1997. LNCS, vol. 1212, pp. 52–71. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  13. 13.
    Hörcher, H.-M., Peleska, J.: The role of formal specifications in software testing. In: Naftalin, M., Bertran, M., Denvir, T. (eds.) FME 1994. LNCS, vol. 873, Springer, Heidelberg (1994)Google Scholar
  14. 14.
    Hörcher, H.-M.: Improving software tests using Z specifications. In: Bowen, J.P., Hinchey, M.G. (eds.) ZUM 1995. LNCS, vol. 967, pp. 152–166. Springer, Heidelberg (1995)Google Scholar
  15. 15.
    Hörcher, H.-M., Peleska, J.: Using formal specifications to support software testing. Software Quality Journal 4, 309–327 (1995)CrossRefGoogle Scholar
  16. 16.
    Kohl, J., Rogers, P.: Watir Works. Better Software, 40–45 (April 2005)Google Scholar
  17. 17.
    Krishnan, P.: Uniform descriptions for model based testing. In: Proceedings of the 2004 Australian Software Engineering Conference (ASWEC 2004), IEEE, Los Alamitos (2004), Google Scholar
  18. 18.
    Li, D., Aichernig, B.K.: Automatic Test Case Generation for RAISE. Technical Report 273, UNU-IIST, P.O.Box 3058, Macao (January 2003)Google Scholar
  19. 19.
    Mikk, E.: Compilation of Z specifications into C for automatic test result evaluation. In: Bowen, J.P., Hinchey, M.G. (eds.) ZUM 1995. LNCS, vol. 967, pp. 167–180. Springer, Heidelberg (1995)Google Scholar
  20. 20.
    The RAISE Languager Group.: The RAISE Specification Language. BCS Practitioner Series. Prentice Hall, Englewood Cliffs (1992)Google Scholar
  21. 21.
    The RAISE Method Group.: The RAISE Development Method. BCS Practitioner Series. Prentice Hall, Englewood Cliffs (1995), available by ftp from
  22. 22.
    Stocks, P.A.: Applying Formal Methods to Software Testing. PhD thesis, Department of Computer Science, The University of Queensland, St. Lucia 4072, Australia (1993)Google Scholar
  23. 23.
    Stocks, P.A., Carrington, D.A.: A Framework for Specification-based Testing. IEEE Transactions in Software Engineering 22(11), 777–793 (1996)CrossRefGoogle Scholar
  24. 24.
    Legeard, B., Peureux, F., Utting, M.: Automated boundary testing from Z and B. In: Meersman, R., Tari, Z. (eds.) On the Move to Meaningful Internet Systems 2004: CoopIS, DOA, and ODBASE. LNCS, vol. 3291, pp. 21–40. Springer, Heidelberg (2004)Google Scholar
  25. 25.
    Utting, M.: Position paper: model-based testing. Verified Software: Theories, Tools, Experiments. ETH Zürich, IFIP WG 2.3 (2005)Google Scholar
  26. 26.
    Utting, M., Legeard, B.: Practical Model-Based Testing: A Tools Approach. Morgan-Kaufmann, San Francisco (2007)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Chris George
    • 1
  • Padmanabhan Krishnan
    • 2
  • P. A. P. Salas
    • 2
  • J. W. Sanders
    • 1
  1. 1.United Nations University International Institute for Software Technology, Macao 
  2. 2.School of Information Technology, Bond UniversityAustralia

Personalised recommendations