Mutant Operators for Testing Concurrent Java Programs

  • Márcio Delamaro UEM
  • Mauro Pezzè Università degli Studi di Milano
  • Auri M. R. Vincenzi USP

Resumo

Mutation testing is a fault-based testing technique that has been widely studied in the last decades. One reason for the interest of the scientific community in mutation testing is its flexibility. It can be applied to programs at unit and integration testing levels, as well as to software specifications written in a variety of different languages. A fundamental issue to make mutation testing work for a given language or environment is the set of mutant operators used to create the mutants. In this paper a set o mutant operator is proposed for the Java programming language, and more specifically, aiming at exercising aspects of concurrency and synchronization of that language.

Referências

H. Agrawal, R. A. DeMillo, R. Hataway, Wm. Hsu, W. Hsu, E. Krauser, R. J. Martin, A. P. Mathur, and E. H. Spafford. Design of Mutant Operators for C Programming Language. Tech Report SERC-TR41-P, Software Engineering Research Center, Purdue University, March 1989.

M. Delamaro, M. Pezzè, A. M. R. Vincenzi, and J. C. Maldonado. Applying Mutation Testing to Multi-threaded JAVA Programs. Tech Report, http://www.din.uem.br/Ëœdelamaro/papers/relat.ps.gz, 2001.

M. E. Delamaro. Proteum: Um Ambiente de Teste Baseado Na Análise de Mutantes. Master thesis, SCE-ICMSC-USP, São Carlos SP, October 1993.

M. E. Delamaro, J. C. Maldonado, and A. P. Mathur. Interface Mutation: An Approach for Integration Testing. IEEE Transactions on Software Engineering, 27(3):228-247, March 2001.

R. A. DeMillo and A. J. Offutt. Constraint Based Automatic Test Data Generation. IEEE Transactions on Software Engineering, 17(9):900-910, September 1991.

S. C. P F. Fabbri. A Análise de Mutantes No Contexto de Sistemas Reativos: Uma Contribuição Para O Estabelecimento de Estratégias de Teste e Validação. Doctoral dissertation, IFSC USP, São Carlos SP, October 1996.

S. C. P. F. Fabbri, J. C. Maldonado, P. C. Masiero, and M. E. Delamaro. Mutation Analysis Testing for Finite State Machines. In Proceedings of the 5th International Symposium on Software Reliability Engineering (ISSRE), pages 220-229, Monterey CA, November 1994.

S. C. P. F. Fabbri, J. C. Maldonado, P. C. Masiero, and M. E. Delamaro. Mutation Analisys Applied to Validate Specifications Based on Petri Nets. In Proceeding of the 8th IFIP Conference on Formal Descriptions Techniques for Distribute Systems and Communication Protocols, pages 329-337, Montreal, October 1995.

J. Gosling, B. Joy, G. Steele, and G. Bracha. Tha Java Language Specification. Java Series. Addison-Wesley, 2nd edition, June 2000.

S. Kim, J. A. Clark, and J. McDermid. The Rigorous Generation of Java Mutation Operators Using HAZOP. In Proceedings of the 12th International Conference on Software & Systems Engineering and their Applications (IC-SSEA'99), December 1999.

S. Kim, J. A. Clark, and J. McDermid. Class Mutation: Mutation Testing for Object-Oriented Programs. In Proceedings of the FMES, October 2000.

K. N. King and A. J. Offutt. A Fortran Language System for Mutation Based Software Testing. Software-Practice and Experience, 21(7):685-718, July 1991.

A. P. Mathur and W. E. Wong. Evaluation of the Cost of Alternate Mutation Strategies. In Proceedings of the 7th Brazilian Symposium on Software Engineering, pages 320-335, Rio de Janeiro, RJ, Brazil, October 1993.

A. J. Offutt. Coupling Effect: Fact or Fiction. In Proceedings of the 3rd Symposium on Software Testing, Analysis, and Verification (ISSTA'89), pages 131-140, Key West, FL, December 1989.

A. J. Offutt and J. H. Hayes. A Semantic Model of Program Faults. In Proceedings of the International Symposium on Software Testing and Analisys and Verification (ISSTA'96), San Diego, CA, 1996.

A. J. Offutt, A. Lee, G. Rothermel, R. H. Untch, and C. Zapf. An Experimental Determination of Sufficient Mutant Operators. ACM Transactions on Software Engineering Methodology, 5(2):99-118, 1996.

A. J. Offutt, J.M. Voas, and J. Payne. Mutation Operators for ADA. Technical Report ISSE-TR-96-09, Department of ISSE, George Mason University, Fairfax, VA, March 1996.

R. L. Probert and F. Guo. Mutation Testing of Protocols: Principles and Preliminary Experimental Results. In IFIP TC6 - Third International Workshop on Protocol Test Systems, pages 57-76. North-Holland, 1991.

S. Silva-Barradas. Mutation Analysis of Concurrent Software. Phd thesis, Department of Eletronic and Informatics, Polythecnic of Milan, Milan, Italy, 1997.

S. R. S. Souza, J. C. Maldonado, S. C. P. F. Fabbri, and W. Lopes de Souza. Mutation Testing Applied to Estelle Specifications. In 33rd Hawaii Internacional Conference on System Sciences, Mini-Tracks: Distributed Systems Testing, Maui, Hawai, January 2000. (Accepted for publication in a special issue on Distributed Systems Testing of the Software Quality Journal).

A. M. R. Vincenzi, J. C. Maldonado, E. F. Barbosa, and M. E. Delamaro. Unit and Integration Testing for C Programs Using Mutation-based Criteria. Journal of Software Testing, Validation and Reliability, 2001. to appear.
Publicado
2001-10-03
Como Citar
DELAMARO, Márcio; PEZZÈ, Mauro; VINCENZI, Auri M. R.. Mutant Operators for Testing Concurrent Java Programs. Anais do Simpósio Brasileiro de Engenharia de Software (SBES), [S.l.], p. 272-285, out. 2001. ISSN 0000-0000. Disponível em: <https://sol.sbc.org.br/index.php/sbes/article/view/23994>. Acesso em: 18 maio 2024. doi: https://doi.org/10.5753/sbes.2001.23994.