The chaining approach for software test data generation
ACM Transactions on Software Engineering and Methodology (TOSEM)
Automated test data generation for programs with procedures
ISSTA '96 Proceedings of the 1996 ACM SIGSOFT international symposium on Software testing and analysis
Fitness Function Design To Improve Evolutionary Structural Testing
GECCO '02 Proceedings of the Genetic and Evolutionary Computation Conference
Instrumenting Programs With Flag Variables For Test Data Search By Genetic Algorithms
GECCO '02 Proceedings of the Genetic and Evolutionary Computation Conference
Improving Evolutionary Testing By Flag Removal
GECCO '02 Proceedings of the Genetic and Evolutionary Computation Conference
An Automated Framework for Structural Test-Data Generation
ASE '98 Proceedings of the 13th IEEE international conference on Automated software engineering
IEEE Transactions on Software Engineering
Evolutionary testing in the presence of loop-assigned flags: a testability transformation approach
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Evolutionary testing of classes
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Search-based software test data generation: a survey: Research Articles
Software Testing, Verification & Reliability
Generating test data for distributed software using the chaining approach
Information and Software Technology
GECCO'03 Proceedings of the 2003 international conference on Genetic and evolutionary computation: PartII
Evolutionary testing of flag conditions
GECCO'03 Proceedings of the 2003 international conference on Genetic and evolutionary computation: PartII
The state problem for evolutionary testing
GECCO'03 Proceedings of the 2003 international conference on Genetic and evolutionary computation: PartII
Evolutionary Testing Using an Extended Chaining Approach
Evolutionary Computation
TimeAware test suite prioritization
Proceedings of the 2006 international symposium on Software testing and analysis
Search based software testing of object-oriented containers
Information Sciences: an International Journal
Fitness calculation approach for the switch-case construct in evolutionary testing
Proceedings of the 10th annual conference on Genetic and evolutionary computation
Nature-inspired techniques for conformance testing of object-oriented software
Applied Soft Computing
Testability transformation: program transformation to improve testability
Formal methods and testing
Transition coverage testing for simulink/stateflow models using messy genetic algorithms
Proceedings of the 13th annual conference on Genetic and evolutionary computation
A multi-objective evolutionary algorithm to obtain test cases with variable lengths
Proceedings of the 13th annual conference on Genetic and evolutionary computation
Synthesizing method sequences for high-coverage testing
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
Hi-index | 0.00 |
The application of Evolutionary Algorithms to structural test data generation, known as Evolutionary Testing, has to date largely focused on programs with input-output behavior. However, the existence of state behavior in test objects presents additional challenges for Evolutionary Testing, not least because certain test goals may require a search for a sequence of inputs to the test object. Furthermore, state-based test objects often make use of internal variables such as boolean flags, enumerations and counters for managing or querying their internal state. These types of variables can lead to a loss of information in computing fitness values, producing coarse or flat fitness landscapes. This results in the search receiving less guidance, and the chances of finding required test data are decreased.This paper proposes an extended approach based on previous works. Input sequences are generated, and internal variable problems are addressed through hybridization with an extended Chaining Approach. The basic idea of the Chaining Approach is to find a sequence of statements, involving internal variables, which need to be executed prior to the test goal. By requiring these statements are executed, information previously unavailable to the search can be made use of, possibly guiding it into potentially promising and unexplored areas of the test object's input domain. A number of experiments demonstrate the value of the approach.