Abstract
This paper discusses the calculation of test-cases for interactive systems. A novel approach is presented that treats the problem of test-case synthesis as an abstraction problem. The refinement calculus is used to formulate abstraction rules for calculating correct test-case scenarios from a formal contract. This abstraction calculus results in a synthesis method that, does not need to compute a finite state machine. This is in contrast to previous work on testing from state-based specifications. A well known example from the testing literature serves to demonstrate this unusual application of the refinement calculus in order to synthesize tests rather than implementations.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Jean-Raymond Abrial. The B-Book: Assigning Programs to Meanings. Cambridge University Press, Trumpington Street, Cambridge CB2 1RP, Great Britain, 1996.
Lionel Van Aertryck. Une méthode et un outil pour l’la génération de jeux de tests de logiciels. PhD thesis, Universitées, January 1998.
Bernhard K. Aichernig. Automated black-box testing with abstract VDM oracles. In M. Felici, K. Kanoun, and A. Pasquini, editors, Computer Safety, Reliability and Security: proceedings of the 18th International Conference, SAFECOMP’ Toulouse, France, September 1999, volume 1698 of Lecture Notes in Computer Science, pages 250-59. Springer, 1999.
Bernhard K. Aichernig, Andreas Gerstinger, and Robert Aster. Formal specification techniques as a catalyst in validation. In Proceedings of the 5th Conference on High-Assurance Software Engineering, 5th-7th November 2000, Albuquerque, New Mexico, USA. IEEE, 2000. To be published.
Ralph Back, Anna Mikhajlova, and Joakim von Wright. Reasoning about inter-active systems. In Jeannette M. Wing, Jim Woodcock, and Jim Davies, editors, FM’99 — Formal Methods, World Congress on Formal Methods in the Development of Computing Systems, Toulouse, France, September 1999, Proceedings, Volume II, volume 1709 of Lecturen Notes in Computer Science. Springer, 1999.
Ralph-Johan Back and Joakim von Wright. Refinement Calculus, a Systematic Introduction. Graduate Texts in Computer Science. Springer, 1998.
Boris Beizer. Software Testing Techniques. Van Nostrand Reinhold, New York, 2nd edition, 1990.
Boris Beizer. Black-Box Testing: Techniques for Functional Testing of Software and Systems. John Wiley & Sons, Inc., 1995.
D. Carrington and P. Stocks. A tale of two paradigms: Formal methods and software testing. In Proceedings of the 8th Z User Meeting. Springer-Verlag, 1994.
John Derrick and Eerke Boiten. Testing re_nements of state-based formal specifications. Software Testing, Verification and Reliability, 9:27–50, July 1999.
Jeremy Dick and Alain Faivre. Automating the generation and sequencing of test cases from model-based specifications. In J.C.P. Woodcock and P.G. Larsen, editors, FME’93: Industrial-Strength Formal Methods. Springer-Verlag, April 1993.
E.W. Dijkstra. A Discipline of Programming. Prentice-Hall International, 1976.
John Fitzgerald and Peter Gorm Larsen. Modelling Sytems, Practical Tools and Techniques. Cambridge University Press, 1998.
Marie-Claude Gaudel and Perry R. James. Testing algebraic data types and processes: A unifying theory. Formal Aspects of Computing, 10(5 & 6):436–451, 1998.
Steffen Helke, Thomas Neustupny, and Thomas Santen. Automating test case generation from Z specifications with Isabelle. In ZUM’97, 1997.
E.M. Hörcher and E. Mikk. Test automation using Z specifications. In “Tools for System Development and verification”, Workshop, Bremen, Germany, BISS Monographs. Shaker Verlag, 1996.
Johann Hörl and Bernhard K. Aichernig. Formal specification of a voice communication system used in air traffic control, an industrial application of lightweight formal methods using VDM++ (abstract). In J.M. Wing, J. Woodcock, and J. Davies, editors, Proceedings of FM’99-Formal Methods, World Congress on Formal Methods in the Development of Computing Systems, Toulouse, France, September 1999, volume 1709 of Lecture Notes in Computer Science, page 1868. Springer, 1999. Full report at ftp://ftp.ist.tugraz.ac.at/pub/publications/IST-TEC-99-03.ps.gz.
Johann Hörl and Bernhard K. Aichernig. Validating voice communication requirements using lightweight formal methods. IEEE Software, pages 21–27, May/June 2000.
Mathias Jarke and Reino Kurki-Suoni (editors). Special issue on scenario management. IEEE Transactions on Software Engineering, 24(12), 1998.
Cliff B. Jones. Systematic Software Development Using VDM. Series in Computer Science. Prentice-Hall, second edition, 1990.
Ian MacColl and David Carrington. A model of specification-based testing of interactive systems (abstract). In J.M. Wing, J. Woodcock, and J. Davies, editors, Proceedings of FM’99-Formal Methods, World Congress on Formal Methods in the Development of Computing Systems, Toulouse, France, September 1999, volume 1709 of Lecture Notes in Computer Science, page 1862. Springer, 1999. Full report at http://www.csee.uq.edu.au/ianm/model.ps.gz.
Carrol C. Morgan. Programming from Specifications. Series in Computer Science. Prentice-Hall International, 1990.
Jan Peleska. Test Automation for Safety-Critical Systems: Industrial Application and Future Developments. In Marie-Claude Gaudel and Jim Woodcock, editors, FME’96: Industrial Benefit and Advances in Formal Methods, pages 39–59. Springer-Verlag, March 1996.
Jan Peleska and Michael Siegel. From Testing Theory to Test Driver Implementation. In Marie-Claude Gaudel and Jim Woodcock, editors, FME’96: Industrial Benefit and Advances in Formal Methods, pages 538–556. Springer-Verlag, March 1996.
S. Sadeghipour and H. Singh. Test strategies on the basis of extended finite state machines. Technical report, Daimler-Benz AG, Research and Technology, 1998.
Harbhajan Singh, Mirko Conrad, and Sadegh Sadeghipour. Test case design based on Z and the classification-tree method. In Proceedings of the 1st International Conference on Formal Engineering Methods (ICFEM’ 97), 1997.
Susan Stepney. Testing as abstraction. In J. P. Bowen and M. G. Hinchey, editors, ZUM’ 95: 9th International Conference of Z Users, Limerick 1995, volume 967 of Lecture Notes in Computer Science. Springer, 1995.
P.A. Stocks and D.A. Carrington. Test templates: A specification-based testing framework. In Proceedings of the 15th International Conference on Software Engineering, pages 405–414, August 1993.
Phil Stocks and David Carrington. Test template framework: A specification-based testing case study. In Proceeddings of the International Symposium on Software Testing and Analysis, pages 11–18, 1993.
Philip Alan Stocks. Applying formal methods to software testing. PhD thesis, The Department of computer science, The University of Queensland, 1993.
H. Treharne, J. Draper, and S. Schneider. Test case preparation using a prototype. In Didier Bert, editor, B’98, volume 1393 of LNCS, pages 293–311. Springer, 1998.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Aichernig, B.K. (2001). Test-Case Calculation Through Abstraction. In: Oliveira, J.N., Zave, P. (eds) FME 2001: Formal Methods for Increasing Software Productivity. FME 2001. Lecture Notes in Computer Science, vol 2021. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45251-6_33
Download citation
DOI: https://doi.org/10.1007/3-540-45251-6_33
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-41791-0
Online ISBN: 978-3-540-45251-5
eBook Packages: Springer Book Archive