Advertisement

Test-Case Calculation Through Abstraction

  • Bernhard K. Aichernig
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2021)

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.

Keywords

testing test-case synthesis refinement calculus abstraction rules scenarios contract 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Jean-Raymond Abrial. The B-Book: Assigning Programs to Meanings. Cambridge University Press, Trumpington Street, Cambridge CB2 1RP, Great Britain, 1996.zbMATHGoogle Scholar
  2. 2.
    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.Google Scholar
  3. 3.
    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.Google Scholar
  4. 4.
    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.Google Scholar
  5. 5.
    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.Google Scholar
  6. 6.
    Ralph-Johan Back and Joakim von Wright. Refinement Calculus, a Systematic Introduction. Graduate Texts in Computer Science. Springer, 1998.Google Scholar
  7. 7.
    Boris Beizer. Software Testing Techniques. Van Nostrand Reinhold, New York, 2nd edition, 1990.Google Scholar
  8. 8.
    Boris Beizer. Black-Box Testing: Techniques for Functional Testing of Software and Systems. John Wiley & Sons, Inc., 1995.Google Scholar
  9. 9.
    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.Google Scholar
  10. 10.
    John Derrick and Eerke Boiten. Testing re_nements of state-based formal specifications. Software Testing, Verification and Reliability, 9:27–50, July 1999.CrossRefGoogle Scholar
  11. 11.
    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.Google Scholar
  12. 12.
    E.W. Dijkstra. A Discipline of Programming. Prentice-Hall International, 1976.Google Scholar
  13. 13.
    John Fitzgerald and Peter Gorm Larsen. Modelling Sytems, Practical Tools and Techniques. Cambridge University Press, 1998.Google Scholar
  14. 14.
    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.zbMATHCrossRefGoogle Scholar
  15. 15.
    Steffen Helke, Thomas Neustupny, and Thomas Santen. Automating test case generation from Z specifications with Isabelle. In ZUM’97, 1997.Google Scholar
  16. 16.
    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.Google Scholar
  17. 17.
    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.Google Scholar
  18. 18.
    Johann Hörl and Bernhard K. Aichernig. Validating voice communication requirements using lightweight formal methods. IEEE Software, pages 21–27, May/June 2000.Google Scholar
  19. 19.
    Mathias Jarke and Reino Kurki-Suoni (editors). Special issue on scenario management. IEEE Transactions on Software Engineering, 24(12), 1998.Google Scholar
  20. 20.
    Cliff B. Jones. Systematic Software Development Using VDM. Series in Computer Science. Prentice-Hall, second edition, 1990.Google Scholar
  21. 21.
    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.Google Scholar
  22. 22.
    Carrol C. Morgan. Programming from Specifications. Series in Computer Science. Prentice-Hall International, 1990.Google Scholar
  23. 23.
    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.Google Scholar
  24. 24.
    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.Google Scholar
  25. 25.
    S. Sadeghipour and H. Singh. Test strategies on the basis of extended finite state machines. Technical report, Daimler-Benz AG, Research and Technology, 1998.Google Scholar
  26. 26.
    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.Google Scholar
  27. 27.
    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.Google Scholar
  28. 28.
    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.Google Scholar
  29. 29.
    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.Google Scholar
  30. 30.
    Philip Alan Stocks. Applying formal methods to software testing. PhD thesis, The Department of computer science, The University of Queensland, 1993.Google Scholar
  31. 31.
    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.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Bernhard K. Aichernig
    • 1
  1. 1.Institute for Software TechnologyGraz University of TechnologyGrazAustria

Personalised recommendations