Timed Wp-Method: Testing Real-Time Systems

Real-time systems interact with their environment using time constrained input/output signals. Examples of real-time systems include patient monitoring systems, air traffic control systems, and telecommunication systems. For such systems, a functional misbehavior or a deviation from the specified time constraints may have catastrophic consequences. Therefore, ensuring the correctness of real-time systems becomes necessary. Two different techniques are usually used to cope with the correctness of a software system prior to its deployment, namely, verification and testing. In this paper, we address the issue of testing real-time software systems specified as a timed input output automaton (TIOA). TIOA is a variant of timed automaton. We introduce the syntax and semantics of TIOA. We present the potential faults that can be encountered in a timed system implementation. We study these different faults based on TIOA model and look at their effects on the execution of the system using the region graph. We present a method for generating timed test cases. This method is based on a state characterization technique and consists of the following three steps: First, we sample the region graph using a suitable granularity, in order to construct a subautomaton easily testable, called grid automaton. Then, we transform the grid automaton into a nondeterministic timed finite state machine (NTFSM). Finally, we adapt the generalized Wp-method to generate timed test cases from NTFSM. We assess the fault coverage of our test cases generation method and prove its ability to detect all the possible faults. Throughout the paper, we use examples to illustrate the various concepts and techniques used in our approach.

[1]  P. Merlin,et al.  Recoverability of Communication Protocols - Implications of a Theoretical Study , 1976, IEEE Transactions on Communications.

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

[3]  Rocco De Nicola,et al.  Testing Equivalences for Processes , 1984, Theor. Comput. Sci..

[4]  B. Dasarathy,et al.  Timing Constraints of Real-Time Systems: Constructs for Expressing Them, Methods of Validating Them , 1989, IEEE Transactions on Software Engineering.

[5]  Elaine J. Weyuker,et al.  Selecting Software Test Data Using Data Flow Information , 1985, IEEE Transactions on Software Engineering.

[6]  Krishan K. Sabnani,et al.  A Protocol Test Generation Procedure , 1988, Comput. Networks.

[7]  R. Alur,et al.  Automata For Modeling Real-Time Systems , 1990, ICALP.

[8]  Son T. Vuong,et al.  On Test Coverage Metrics for Communication Protocols , 1991, Protocol Test Systems.

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

[10]  Jan Tretmans,et al.  A Formal Approach to Conformance Testing , 1993, Protocol Test Systems.

[11]  Joseph Sifakis,et al.  Compiling Real-Time Specifications into Extended Automata , 1992, IEEE Trans. Software Eng..

[12]  Karlis Cerans,et al.  Decidability of Bisimulation Equivalences for Parallel Timer Processes , 1992, CAV.

[13]  Wang Yi,et al.  Time Abstracted Bisimiulation: Implicit Specifications and Decidability , 1993, MFPS.

[14]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

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

[16]  Giuseppe Scollo,et al.  Lotos specifications, their implementations and their tests , 1995 .

[17]  Sandro Morasca,et al.  Generating test cases for real-time systems from logic specifications , 1995, TOCS.

[18]  G. J. Tretmans Testing labelled Transition Systems with Inputs and Outputs , 1995 .

[19]  Conrado Daws,et al.  Reducing the number of clock variables of timed automata , 1996, RTSS.

[20]  Frits W. Vaandrager,et al.  Minimizable Timed Automata , 1996, FTRTFT.

[21]  Wang Yi,et al.  Time-abstracted Bisimulation: Implicit Specifications and Decidability , 1997, Inf. Comput..

[22]  O. Charles Application des hypothèses de test à une définition de la couverture. (Application of test hypotheses to a definition of test coverage) , 1997 .

[23]  I. Lee,et al.  Automatic generation of tests for timing constraints from requirements , 1997, Proceedings Third International Workshop on Object-Oriented Real-Time Dependable Systems.

[24]  Ferhat Khendek,et al.  Timed test cases generation based on state characterization technique , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[25]  Mingyu Yao On the development of conformance test suites in view of their fault coverage , 1998 .

[26]  Rachel Cardell-Oliver,et al.  A Practical and Complete Algorithm for Testing Real-Time Systems , 1998, FTRTFT.

[27]  Ferhat Khendek,et al.  Fault coverage in testing real-time systems , 1999, Proceedings Sixth International Conference on Real-Time Computing Systems and Applications. RTCSA'99 (Cat. No.PR00306).

[28]  Teruo Higashino,et al.  Generating Test Cases for a Timed I/O Automaton Model , 1999, IWTCS.

[29]  Ahmed Khoumsi A new method for testing real time systems , 2000, Proceedings Seventh International Conference on Real-Time Computing Systems and Applications.

[30]  Abdeslam En-Nouaary,et al.  An Approach for Testing Real Time Protocol Entities , 2000, TestCom.

[31]  Paul D. Amer,et al.  Test Generation in the Presence of Conflicting Timers , 2000, TestCom.

[32]  Frits W. Vaandrager,et al.  Testing timed automata , 1997, Theor. Comput. Sci..

[33]  Brian Nielsen,et al.  Automated test generation from timed automata , 2001, International Journal on Software Tools for Technology Transfer.