An Integrated Refinement and Testing Method for Stream X-machines

Abstract. Over the last decade, stream X-machines have been used in order to specify a range of systems. One of the strengths of this approach is that, under certain well defined conditions, it is possible to produce a test set that is guaranteed to determine the correctness of the implementation under test. However, if X-machines are to be used in practice as a tool for specification and test generation, there needs to be ways of developing existing specifications into more complex and more detailed versions through a process of refinement. Associated with the refinement of the specification, there needs to be methods of refining the corresponding test sets, that is to construct the test set in parallel with the specification and to distribute the testing into smaller chunks, with major cost and time savings. A few such specification and testing refinements of X-machine have already been investigated. This paper introduces a new type of X-machine refinement, called simple covering, which expands the input-output behaviour of an existing X-machine. Associated with this process, the corresponding refinement of the test set is described and a method of testing X-machines constructed as simple coverings is developed.

[1]  Robert M. Hierons,et al.  Adaptive Testing of a Deterministic Implementation Against a Nondeterministic Finite State Machine , 1998, Comput. J..

[2]  Gilbert Thomas Laycock,et al.  Formal specification and testing: A case study , 1992, Softw. Test. Verification Reliab..

[3]  Florentin Ipate,et al.  An integration testing method that is proved to find all faults , 1997, Int. J. Comput. Math..

[4]  Mike Holcombe X-machines as a basis for dynamic system specification , 1988, Softw. Eng. J..

[5]  Mike Holcombe,et al.  Using an X-Machine to Model a Video Cassette Recorder , 1995 .

[6]  Daniel I. A. Cohen,et al.  Introduction to computer theory , 1986 .

[7]  Arthur Gill,et al.  Introduction to the theory of finite-state machines , 1962 .

[8]  Florentin Ipate,et al.  Generating Test Sets from Non-Deterministic Stream X-Machines , 2000, Formal Aspects of Computing.

[9]  Samuel Eilenberg,et al.  Automata, languages, and machines. A , 1974, Pure and applied mathematics.

[10]  Alexandre Petrenko,et al.  Test Selection Based on Communicating Nondeterministic Finite-State Machines Using a Generalized WP-Method , 1994, IEEE Trans. Software Eng..

[11]  Ferhat Khendek,et al.  Test Selection Based on Finite State Models , 1991, IEEE Trans. Software Eng..

[12]  Florentin Ipate,et al.  A method for refining and testing generalised machine specifications , 1998, Int. J. Comput. Math..

[13]  Robert M. Hierons,et al.  Testing from a Z Specification , 1997, Softw. Test. Verification Reliab..

[14]  Mike Holcombe,et al.  Specification and testing using generalized machines: a presentation and a case study , 1998 .

[15]  Zvi Kohavi,et al.  Checking experiments for sequential machines , 1974, Inf. Sci..

[16]  Mike Holcombe An integrated methodology for the specification, verification and testing of systems , 1993, Softw. Test. Verification Reliab..

[17]  Tsun S. Chow,et al.  Testing Software Design Modeled by Finite-State Machines , 1978, IEEE Transactions on Software Engineering.

[18]  Florentin Ipate Theory of X-machines with applications in specification and testing , 1995 .

[19]  Marc J. Balcer,et al.  The category-partition method for specifying and generating fuctional tests , 1988, CACM.

[20]  Mike Holcombe,et al.  Complete Functional Testing of Safety Critical Systems , 1995 .

[21]  Florentin Ipate,et al.  Another Look at Computability , 1996, Informatica.

[22]  Richard B. Bunt,et al.  An introduction to computer , 1979 .

[23]  Marie-Claude Gaudel,et al.  Software testing based on formal specifications: a theory and a tool , 1991, Softw. Eng. J..

[24]  David A. Carrington,et al.  Test template framework: a specification-based testing case study , 1993, ISSTA '93.

[25]  S. Seshu,et al.  Introduction to the theory of finite-state machines , 1963 .

[26]  Florentin Ipate,et al.  Correct systems - building a business process solution , 1998, Applied computing.

[27]  Robert M. Hierons,et al.  Testing from a Finite-State Machine: Extending Invertibility to Sequences , 1997, Comput. J..

[28]  Asok Bhattacharya Checking experiments in sequential machines , 1989 .

[29]  Marie-Claude Gaudel,et al.  Using algebraic specifications in software testing: A case study on the software of an automatic subway , 1993, J. Syst. Softw..