Specification Mutation Analysis for Validating Timed Testing Approaches Based on Timed Automata

Testing real-time systems is a non-trivial validation task, especially after adding time as a new dimension to its complexity. In previous research, we introduced a 'priority-based' approach which tested the logical and timing behaviour of real-time systems modelled formally as UPPAAL Timed Automata (UTA). In this paper, we validate the 'priority-based' approach with a comparison to four well-known timed testing approaches based on a Timed Automata (TA) formalism using Specification Mutation Analysis (SMA). We introduce a set of timed and functional mutation operators based on TA. Three case studies are used to run the mutation analysis and mutants are generated according to the proposed mutation operators. The effectiveness of timed testing approaches are determined and contrasted according to the mutation score; we show that our testing approach achieves high mutation adequacy score when compared with others.

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

[2]  M. R. Woodward OBJTEST: an experimental testing tool for algebraic specifications , 1992 .

[3]  M. Trakhtenbrot,et al.  New Mutations for Evaluation of Specification and Implementation Levels of Adequacy in Testing of Statecharts Models , 2007, Testing: Academic and Industrial Conference Practice and Research Techniques - MUTATION (TAICPART-MUTATION 2007).

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

[5]  Paul Pettersson,et al.  Cover - A Real-Time Test Case Generation Tool , 2007 .

[6]  Elaine J. Weyuker,et al.  On Testing Non-Testable Programs , 1982, Comput. J..

[7]  Ferhat Khendek,et al.  Timed Wp-Method: Testing Real-Time Systems , 2002, IEEE Trans. Software Eng..

[8]  Mark Harman,et al.  An Analysis and Survey of the Development of Mutation Testing , 2011, IEEE Transactions on Software Engineering.

[9]  Paulo César Masiero,et al.  Mutation testing applied to validate specifications based on statecharts , 1999, Proceedings 10th International Symposium on Software Reliability Engineering (Cat. No.PR00443).

[10]  W. Eric Wong,et al.  Mutation Testing Applied to Validate Specifications Based on Petri Nets , 1995, FORTE.

[11]  M. R. Woodward,et al.  Errors in algebraic specifications and an experimental mutation testing tool , 1993, Softw. Eng. J..

[12]  Duncan Clarke,et al.  Automatic test generation for the analysis of a real-time system: Case study , 1997, Proceedings Third IEEE Real-Time Technology and Applications Symposium.

[13]  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.

[14]  Timothy A. Budd,et al.  Program Testing by Specification Mutation , 1985, Comput. Lang..

[15]  Simone do Rocio Senger de Souza,et al.  Mutation testing applied to Estelle specifications , 2000, Proceedings of the 33rd Annual Hawaii International Conference on System Sciences.

[16]  César Viho,et al.  Formal Test Automation: The Conference Protocol with TGV/TORX , 2000, TestCom.

[17]  R. Hierons,et al.  Mutation Testing from Probabilistic Finite State Machines , 2007, Testing: Academic and Industrial Conference Practice and Research Techniques - MUTATION (TAICPART-MUTATION 2007).

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

[19]  Lionel C. Briand,et al.  Is mutation an appropriate tool for testing experiments? , 2005, ICSE.

[20]  Bernhard K. Aichernig,et al.  Mutation Testing in the Refinement Calculus , 2003, Formal Aspects of Computing.

[21]  Márcio Eduardo Delamaro,et al.  Proteum/FSM: a tool to support finite state machine validation based on mutation testing , 1999, Proceedings. SCCC'99 XIX International Conference of the Chilean Computer Science Society.

[22]  W. Eric Wong,et al.  Mutation Testing Applied to Validate SDL Specifications , 2004, TestCom.

[23]  Abdelwahab Hamou-Lhadj,et al.  A Boundary Checking Technique for Testing Real-Time Systems Modeled as Timed Input Output Automata (Short Paper) , 2008, 2008 The Eighth International Conference on Quality Software.

[24]  Steve Counsell,et al.  Fault Coverage Measurement of a Timed Test Case Generation Approach , 2010, 2010 17th IEEE International Conference and Workshops on Engineering of Computer Based Systems.

[25]  Yong Rae Kwon,et al.  MuJava: an automated class mutation system: Research Articles , 2005 .

[26]  Bengt Jonsson,et al.  Specifying and Generating Test Cases Using Observer Automata , 2004, FATES.

[27]  Kim G. Larsen,et al.  Testing Real-Time Systems Using UPPAAL , 2008, Formal Methods and Testing.

[28]  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).

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

[30]  A. Jefferson Offutt,et al.  MuJava: an automated class mutation system , 2005, Softw. Test. Verification Reliab..

[31]  Robert M. Hierons,et al.  Mutation testing from probabilistic and stochastic finite state machines , 2009, J. Syst. Softw..

[32]  Paul Ammann,et al.  Using model checking to generate tests from specifications , 1998, Proceedings Second International Conference on Formal Engineering Methods (Cat.No.98EX241).

[33]  Robert M. Hierons,et al.  A Multi-criteria Decision Making Framework for Real Time Model-Based Testing , 2010, TAIC PART.

[34]  M. R. Woodward,et al.  From weak to strong, dead or alive? an analysis of some mutation testing issues , 1988, [1988] Proceedings. Second Workshop on Software Testing, Verification, and Analysis.

[35]  Richard A DeMillo Mutation Analysis as a Tool for Software Quality Assurance. , 1980 .

[36]  A. Jefferson Offutt,et al.  Mutation Operators for Ada , 1996 .

[37]  Richard J. Lipton,et al.  The design of a prototype mutation system for program testing , 1899, AFIPS National Computer Conference.

[38]  Abdeslam En-Nouaary A scalable method for testing real-time systems , 2007, Software Quality Journal.

[39]  Kim G. Larsen,et al.  A Tutorial on Uppaal , 2004, SFM.

[40]  Márcio Eduardo Delamaro,et al.  Mutation analysis testing for finite state machines , 1994, Proceedings of 1994 IEEE International Symposium on Software Reliability Engineering.

[41]  Richard J. Lipton,et al.  Hints on Test Data Selection: Help for the Practicing Programmer , 1978, Computer.

[42]  Robert M. Hierons,et al.  GeTeX: A Tool for Testing Real-Time Embedded Systems Using CAN Applications , 2011, 2011 18th IEEE International Conference and Workshops on Engineering of Computer-Based Systems.

[43]  Gyula Csopaki,et al.  Applying Mutation Analysis to SDL Specifications , 2003, SDL Forum.

[44]  Abdeslam En-Nouaary,et al.  A Guided Method for Testing Timed Input Output Automata , 2003, TestCom.