A strategy for evaluating feasible and unfeasible test cases for the evolutionary testing of object-oriented software

  • Authors:
  • José Carlos Bregieiro Ribeiro;Mário Zenha Rela;Francisco Fernandéz de Vega

  • Affiliations:
  • Polytechnic Institute of Leiria, Leiria, Portugal;University of Coimbra, Coimbra, Portugal;University of Extremadura, Mérida, Spain

  • Venue:
  • Proceedings of the 3rd international workshop on Automation of software test
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Evolutionary Testing is an emerging methodology for automatically producing high quality test data. The focus of our on-going work is precisely on generating test data for the structural unit-testing of object-oriented Java programs. The primary objective is that of efficiently guiding the search process towards the definition of a test set that achieves full structural coverage of the test object. However, the state problem of object-oriented programs requires specifying carefully fine-tuned methodologies that promote the traversal of problematic structures and difficult control-flow paths - which often involves the generation of complex and intricate test cases, that define elaborate state scenarios. This paper proposes a methodology for evaluating the quality of both feasible and unfeasible test cases - i.e., those that are effectively completed and terminate with a call to the method under test, and those that abort prematurely because a runtime exception is thrown during test case execution. With our approach, unfeasible test cases are considered at certain stages of the evolutionary search, promoting diversity and enhancing the possibility of achieving full coverage.