Automating the generation and sequencing of test cases from model-based specifications

  • Jeremy Dick
  • Alain Faivre
Part of the Lecture Notes in Computer Science book series (LNCS, volume 670)


Formal specifications contain a great deal of information that can be exploited in the testing of an implementation, either for the generation of test-cases, for sequencing the tests, or as an oracle in verifying the tests. This papers presents automatic techniques for partition analysis in state-based specifications, specifically VDM. Test domains for individual operations are calculated by reduction of their mathematical description to a Disjunctive Normal Form. Following this, a partition analysis of the system state can be performed which permits the construction of a Finite State Automaton from the specification. This, in turn, can be used to sequence the required tests in a valid and sensible way. A tool has been developed based on the techniques applied to VDM, which has been used to develop the examples presented in the paper.


Inference Rule Disjunctive Normal Form Partition Analysis Finite State Automaton Individual Operation 
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. [ADLU1]
    Aho A. V., Dahbura A. T., Lee D., Uyar M.U., An Optimisation Technique for Protocol Conformance Test Generation Based on UIO Sequences and Rural Chinese Postman Tours, Proc. Protocol Specification, Test and Verification VIII, 1988Google Scholar
  2. [BGM1]
    Bernot G, Gaudel M-C, Marre B, Software Testing Based on Formal Specifications: a Theory and a Tool, Software Eng. Journal, Nov 1991Google Scholar
  3. [CM1]
    O. Coudert, J. C. Madre, “Towards a Symbolic Logic Minimization Algorithm”, in Proc. of VLSI Design'93, Bombay, India, January 1993.Google Scholar
  4. [D1]
    John Dawes, The VDM-SL Reference Guide, Pitman, 1991.Google Scholar
  5. [D2]
    Tim Denvir, Introduction to Discrete Mathematics for Software Engineering, Mac Millan, 1986.Google Scholar
  6. [DF1]
    Jeremy Dick, Alain Faivre, Automatic Partition Analysis of VDM Specifications, Research Report RAD/DMA/92027, Bull Research Centre, Les Clayes-sous-Bois, France, Oct 1992Google Scholar
  7. [DL1]
    Jeremy Dick, Jérôme Loubersac, Integrating Structured and Formal Methods: A Visual Approach to VDM, Proc. ESEC'91, Milan, Springer-Verlag LNCS 550, pp. 37–59, Oct 1991Google Scholar
  8. [FJ1]
    L.M.G. Feijs, H.B.M. Jonkers. Specification and Design with COLD-K, Philips Research Laboratories, Eindhoven, The Netherlands.Google Scholar
  9. [H1]
    Hall, Patrick A. V., Towards a Theory of Test Data Selection, Second IEE/BCS Conf. Software Engineering 88. IEE Conf. Publication Number 290. pp. 159–163. 1988Google Scholar
  10. [H2]
    Hall, Patrick A. V., Relationship between specifications and testing, Information and Software Technology, Jan/Feb 1991Google Scholar
  11. [HH1]
    Hall P. A. V., Hierons R., Formal Methods and Testing, The Open Univ. Computing Dept. Tech Report No 91/16, August 1991Google Scholar
  12. [J1]
    Cliff B. Jones, Systematic Software Development using VDM, Second Edition, Prentice Hall Int., 1990.Google Scholar
  13. [L1]
    J. Loubersac, VtP Users' Guide, Atmosphere deliverable No., Bull Research Centre, 1992.Google Scholar
  14. [N1]
    N. D. North, Automatic Test Generation for the Triangle Problem, National Physical Laboratory Report DITC 161/90, February 1990.Google Scholar
  15. [P1]
    M. Phillips, CICS/ESA 3.1 Experience, Procs. Z Users' Group, Oxford, 1989.Google Scholar
  16. [S1]
    G. T. Scullard, Test Case Selection using VDM, In Proc. VDM'88, LNCS 328, Springer Verlag.Google Scholar
  17. [SL1]
    Sidhu D. P., Lenung T. K., Formal Methods in Protocol Testing: a Detailed Study, IEEE Trans. SE Vol 15 No 4, 1989Google Scholar
  18. [S2]
    J. M. Spivey, The Z Notation, Prentice Hall, 1989.Google Scholar
  19. [R1]
    The RAISE Language Group, The RAISE Specification Language, Report No. CRI/RAISE/DOC/1/v1, CRI, Denmark 1991.Google Scholar
  20. [W1]
    J. Woodcock, M. Loomes Software Engineering Mathematics Pitman, 1988.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1993

Authors and Affiliations

  • Jeremy Dick
    • 1
  • Alain Faivre
    • 2
  1. 1.Bull Information SystemsHemel HempsteadUK
  2. 2.Bull Corporate Research CentreLes Clayes-sous-BoisFrance

Personalised recommendations