Abstract
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.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
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)
Binder, R.V.: Design for testability in object-oriented systems. Commun. ACM 37(9), 87–101 (1994)
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)
Broy, M., Jonsson, B., Katoen, J.-P., Leucker, M., Pretschner, A. (eds.): Model-Based Testing of Reactive Systems. LNCS, vol. 3472. Springer, Heidelberg (2005)
Buwalda, H.: Action Figures. Software Testing and Quality Engineering, 42–47 (2003)
Buwalda, H., Kasdorp, M.: Getting automated testing under control. Software Testing and Quality Engineering, 39–44 (November/December, 1999)
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)
Duke, R., Rose, G.: Formal Object-Oriented Specification Using Object-Z. Macmillan Press, NYC (2000)
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)
http://portal.etsi.org/mbs/Testing/conformance/conformance.asp
Hayes, I.J.: Specification directed module testing. IEEE Transactions on Software Engineering, SE-12(1):124–133 (1986), See also the 2006 revision http://www.itee.uq.edu.au/~ianh/Papers/spectest.pdf
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)
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)
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)
Hörcher, H.-M., Peleska, J.: Using formal specifications to support software testing. Software Quality Journal 4, 309–327 (1995)
Kohl, J., Rogers, P.: Watir Works. Better Software, 40–45 (April 2005)
Krishnan, P.: Uniform descriptions for model based testing. In: Proceedings of the 2004 Australian Software Engineering Conference (ASWEC 2004), IEEE, Los Alamitos (2004), http://epublications.bond.edu.au/infotech_pubs/8
Li, D., Aichernig, B.K.: Automatic Test Case Generation for RAISE. Technical Report 273, UNU-IIST, P.O.Box 3058, Macao (January 2003)
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)
The RAISE Languager Group.: The RAISE Specification Language. BCS Practitioner Series. Prentice Hall, Englewood Cliffs (1992)
The RAISE Method Group.: The RAISE Development Method. BCS Practitioner Series. Prentice Hall, Englewood Cliffs (1995), available by ftp from ftp://ftp.iist.unu.edu/pub/RAISE/method_book
Stocks, P.A.: Applying Formal Methods to Software Testing. PhD thesis, Department of Computer Science, The University of Queensland, St. Lucia 4072, Australia (1993)
Stocks, P.A., Carrington, D.A.: A Framework for Specification-based Testing. IEEE Transactions in Software Engineering 22(11), 777–793 (1996)
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)
Utting, M.: Position paper: model-based testing. Verified Software: Theories, Tools, Experiments. ETH Zürich, IFIP WG 2.3 (2005)
Utting, M., Legeard, B.: Practical Model-Based Testing: A Tools Approach. Morgan-Kaufmann, San Francisco (2007)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
George, C., Krishnan, P., Salas, P.A.P., Sanders, J.W. (2007). Specification for Testing. In: Jones, C.B., Liu, Z., Woodcock, J. (eds) Formal Methods and Hybrid Real-Time Systems. Lecture Notes in Computer Science, vol 4700. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-75221-9_12
Download citation
DOI: https://doi.org/10.1007/978-3-540-75221-9_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-75220-2
Online ISBN: 978-3-540-75221-9
eBook Packages: Computer ScienceComputer Science (R0)