Mutation Testing Applied to Estelle Specifications

Many researchers have pursued the establishment of a low-cost, effective testing and validation strategy at the program level as well as at the specification level. Mutation Testing is an error-based approach, originally introduced for program testing, that provides testers a systematic way to evaluate how good a given test set is. Some studies have also investigated its use to generate test sets. In this article, the application of Mutation Testing for validating Estelle specifications is proposed. A mutant operator set for Estelle—one of the crucial points for effectively applying Mutation Testing—is defined, addressing: the validation of the behavior of the modules, the communication among modules and the architecture of the specification. In this scope, these operators can be taken as a fault model. Considering this context, a strategy for validating Estelle-based specification is proposed and exemplified using the Alternating-bit protocol.

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

[2]  Will Tracz Test and analysis of software architectures , 1996, ISSTA '96.

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

[4]  Wynne Hsu,et al.  DESIGN OF MUTANT OPERATORS FOR THE C PROGRAMMING LANGUAGE , 2006 .

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

[6]  J. Nunamaker,et al.  Proceedings of the 32nd Hawaii International Conference on System Sciences , 1999 .

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

[8]  A. Sethi,et al.  FORMAL DESIGN AND TESTING OF ARMY COMMUNICATION PROTOCOLS BASED ON ESTELLE , 1998 .

[9]  Paul D. Amer,et al.  OPTIMUM TEST SEQUENCE GENERATION FROM ESTELLE SPECIFICATIONS , 1998 .

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

[11]  O. Henniger,et al.  Transformation of Estelle modules aiming at test case generation , 1996 .

[12]  Elaine J. Weyuker,et al.  Automatically Generating Test Data from a Boolean Specification , 1994, IEEE Trans. Software Eng..

[13]  Aditya P. Mathur,et al.  Interface Mutation: An Approach for Integration Testing , 2001, IEEE Trans. Software Eng..

[14]  Hasan Ural,et al.  Formal methods for test sequence generation , 1992, Comput. Commun..

[15]  Gregg Rothermel,et al.  An experimental determination of sufficient mutant operators , 1996, TSEM.

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

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

[18]  Alexandre Petrenko,et al.  Protocol testing: review of methods and relevance for software testing , 1994, ISSTA '94.

[19]  W. Eric Wong,et al.  Mutation Versus All-uses: An Empirical Evaluation of Cost, Strength and Effectiveness , 1994, Software Quality and Productivity.

[20]  W. Eric Wong,et al.  Reducing the cost of mutation testing: An empirical study , 1995, J. Syst. Softw..

[21]  Stanislaw Budkowski,et al.  An Introduction to Estelle: A Specification Language for Distributed Systems , 1987, Comput. Networks.

[22]  Glenford J. Myers,et al.  Art of Software Testing , 1979 .