Skip to main content

Testing for Refinement in CSP

  • Conference paper
Book cover Formal Methods and Software Engineering (ICFEM 2007)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4789))

Included in the following conference series:

Abstract

CSP is a well-established formalism for modelling and verification of concurrent reactive systems based on refinement. Consolidated denotational models and an effective tool have encouraged much work on algebraic reasoning and model checking. Testing techniques based on CSP, however, have not been widely explored, and in this paper we take a first step by instantiating Gaudel et al’s theory of formal testing to CSP. We identify the testability hypothesis that we consider necessary to use CSP models as a basis for testing. We also define test sets that we prove to be exhaustive with respect to traces and failures refinement, and consider optimisations, inputs and outputs, and selection strategies. Our results are proved in terms of the CSP denotational models; they are a sound foundation for the development of test-generation techniques.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bernot, G., Gaudel, M.-C., Marre, B.: Software Testing Based on Formal Specifications: A theory and a tool. Software Engineering Journal 6(6), 387–405 (1991)

    Article  Google Scholar 

  2. Bougé, L., Choquet, N., Fribourg, L., Gaudel, M.-C.: Test set generation from algebraic specifications using logic programming. Journal of Systems and Software 6(4), 343–360 (1986)

    Article  Google Scholar 

  3. Brinksma, E.: A theory for the derivation of tests. In: Protocol Specification, testing and Verification VIII, North-Holland, pp. 63–74 (1988)

    Google Scholar 

  4. Brinksma, E., Tretmans, J.: Testing Transition Systems: An Annotated Bibliography. In: Cassez, F., Jard, C., Rozoy, B., Dermot, M. (eds.) MOVEP 2000. LNCS, vol. 2067, pp. 187–195. Springer, Heidelberg (2001)

    Google Scholar 

  5. Cavalcanti, A.L.C., Gaudel, M.-C.: Testing for Refinement in CSP – Extended version.Technical report 1473, LRI, Universitè de Paris-Sud (2007), http://www.lri.fr/Rapports-internes/

  6. Chow, T.S.: Testing Software Design Modeled by Finite-State Machines. IEEE TSE SE-4(3), 178–187 (1978)

    Google Scholar 

  7. Dauchy, P., Gaudel, M.-C., Marre, B.: Using Algebraic Specifications in Software Testing: a case study on the software of an automatic subway. Journal of Systems and Software 21(3), 229–244 (1993)

    Article  Google Scholar 

  8. 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)

    Google Scholar 

  9. Dong, R.K., Frankl, P.G.: The ASTOOT approach to testing object-oriented programs. ACM ToSEM 3(2), 103–130 (1994)

    Google Scholar 

  10. Fernandez, J.-C., Jard, C., Jéron, T., Viho, G.: An Experiment in Automatic Generation of Conformance Test Suites for Protocols with Verification Technology. Science of Computer Programming 29, 123–146 (1997)

    Article  Google Scholar 

  11. Gannon, J., McMullin, P., Hamlet, R.: Data abstraction implementation, specification and testing. ACM ToPLaS 3(3), 211–223 (1981)

    Article  Google Scholar 

  12. Gaudel, M.-C.: Testing can be formal, too. In: Mosses, P.D., Schwartzbach, M.I., Nielsen, M. (eds.) CAAP 1995, FASE 1995, and TAPSOFT 1995. LNCS, vol. 915, pp. 82–96. Springer, Heidelberg (1995)

    Google Scholar 

  13. Gaudel, M.-C., James, P.J.: Testing algebraic data types and processes: a unifying theory. Formal Aspects of Computing 10(5-6), 436–451 (1998)

    Article  MATH  Google Scholar 

  14. 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)

    Google Scholar 

  15. Hierons, R.M.: Testing from a Nondeterministic Finite State Machine Using Adaptive State Counting. IEEE Transactions on Computers 53(10), 1330–1342 (2004)

    Article  Google Scholar 

  16. Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)

    MATH  Google Scholar 

  17. Lee, D., Yannakakis, M.: Principles and methods of testing finite state machines - A survey. Proceedings of the IEEE 84, 1090–1126 (1996)

    Article  Google Scholar 

  18. Legeard, B., Peureux, F., Utting, M.: Controlling test case explosion in test generation from B formal models. The Journal of Software Testing, Verification and Reliability 14(2), 81–103 (2004)

    Article  Google Scholar 

  19. Lestiennes, G.: Contributions au test de logiciel basé sur des spécifications formelles. PhD thesis, Université de Paris-Sud (2005)

    Google Scholar 

  20. Machado, P., Sannella, D.: Unit Testing for CASL Architectural Specifications. In: Diks, K., Rytter, W. (eds.) MFCS 2002. LNCS, vol. 2420, pp. 506–518. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  21. De Nicola, R., Hennessy, M.C.B.: Testing equivalences for processes. Theoretical Computer Science 3(1-2), 83–133 (1984)

    Article  Google Scholar 

  22. Nogueira, S.: Automatic Test Case Generation from CSP Specifications Master’s thesis (in Portuguese)

    Google Scholar 

  23. Oliveira, M.V.M., Cavalcanti, A.L.C., Woodcock, J.C.P.: A UTP Semantics for Circus. Formal Aspects of Computing (2007)

    Google Scholar 

  24. Peleska, J., Siegel, M.: Test automation of safety-critical reactive systems. In: Gaudel, M.-C., Woodcock, J.C.P. (eds.) FME 1996. LNCS, vol. 1051, Springer, Heidelberg (1996)

    Google Scholar 

  25. Peleska, J., Siegel, M.: Test automation of safety-critical reactive systems. South African Computer Journal 19, 53–77 (1997)

    Google Scholar 

  26. Roscoe, A.W.: The Theory and Practice of Concurrency. Prentice-Hall, Englewood Cliffs (1998)

    Google Scholar 

  27. Schneider, S.: Concurrent and Real-time Systems: The CSP Approach. Wiley, Chichester (2000)

    Google Scholar 

  28. Spivey, J.M.: The Z Notation: A Reference Manual, 2nd edn. Prentice-Hall, Englewood Cliffs (1992)

    Google Scholar 

  29. Srivatanakul, T., Clark, J.A., Stepney, S., Polack, F.: Challenging formal specifications by mutation: a CSP security example. In: 10th Asia-Pacific Software Engineering Conference, pp. 340–350. IEEE Computer Society Press, Los Alamitos (2003)

    Google Scholar 

  30. Tretmans, J.: A formal approach to conformance testing. PhD thesis, University of Twente, Enschede, The Netherlands (1992)

    Google Scholar 

  31. Tretmans, J.: Test Generation with Inputs, Outputs, and Quiescence. In: Margaria, T., Steffen, B. (eds.) TACAS 1996. LNCS, vol. 1055, pp. 127–146. Springer, Heidelberg (1996)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Michael Butler Michael G. Hinchey María M. Larrondo-Petrie

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Cavalcanti, A., Gaudel, MC. (2007). Testing for Refinement in CSP. In: Butler, M., Hinchey, M.G., Larrondo-Petrie, M.M. (eds) Formal Methods and Software Engineering. ICFEM 2007. Lecture Notes in Computer Science, vol 4789. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-76650-6_10

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-76650-6_10

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-76648-3

  • Online ISBN: 978-3-540-76650-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics