The program dependence graph and its use in optimization
ACM Transactions on Programming Languages and Systems (TOPLAS)
Software testing techniques (2nd ed.)
Software testing techniques (2nd ed.)
Proceedings of the third international conference on Genetic algorithms
Automated Software Test Data Generation
IEEE Transactions on Software Engineering
Constraint-Based Automatic Test Data Generation
IEEE Transactions on Software Engineering
A semantic model of program faults
ISSTA '96 Proceedings of the 1996 ACM SIGSOFT international symposium on Software testing and analysis
Assertion-oriented automated test data generation
Proceedings of the 18th international conference on Software engineering
Automatic test data generation using constraint solving techniques
Proceedings of the 1998 ACM SIGSOFT international symposium on Software testing and analysis
Automated program flaw finding using simulated annealing
Proceedings of the 1998 ACM SIGSOFT international symposium on Software testing and analysis
Proceedings of the 22nd international conference on Software engineering
Generating Software Test Data by Evolution
IEEE Transactions on Software Engineering
Improving Evolutionary Testing By Flag Removal
GECCO '02 Proceedings of the Genetic and Evolutionary Computation Conference
A CLP Framework for Computing Structural Test Data
CL '00 Proceedings of the First International Conference on Computational Logic
Generating Test Data for Branch Coverage
ASE '00 Proceedings of the 15th IEEE international conference on Automated software engineering
IEEE Transactions on Software Engineering
Search-based software test data generation: a survey: Research Articles
Software Testing, Verification & Reliability
The species per path approach to SearchBased test data generation
Proceedings of the 2006 international symposium on Software testing and analysis
Software Testing, Verification & Reliability - UKTest 2005: The Third U.K. Workshop on Software Testing Research
Proceedings of the 2007 international symposium on Software testing and analysis
Using model-checkers to generate and analyze property relevant test-cases
Software Quality Control
A Comparative Evaluation of Tests Generated from Different UML Diagrams
SNPD '08 Proceedings of the 2008 Ninth ACIS International Conference on Software Engineering, Artificial Intelligence, Networking, and Parallel/Distributed Computing
Automated test data generation for aspect-oriented programs
Proceedings of the 8th ACM international conference on Aspect-oriented software development
Empirical evaluation of a nesting testability transformation for evolutionary testing
ACM Transactions on Software Engineering and Methodology (TOSEM)
Generating input data structures for automated program testing
Software Testing, Verification & Reliability
Measuring and Improving Latency to Avoid Test Suite Wear Out
ICSTW '09 Proceedings of the IEEE International Conference on Software Testing, Verification, and Validation Workshops
Using program data-state scarcity to guide automatic test data generation
Software Quality Control
Predicate expression cost functions to guide evolutionary search for test data
GECCO'03 Proceedings of the 2003 international conference on Genetic and evolutionary computation: PartII
Grouping target paths for evolutionary generation of test data in parallel
Journal of Systems and Software
Hi-index | 0.00 |
The software testing phase in the software development process is considered a time-consuming process. In order to reduce the overall development cost, automatic test data generation techniques based on genetic algorithms have been widely applied. This research explores a new approach for using genetic algorithms as test data generators to execute all the branches in a program. In the literature, existing approaches for test data generation using genetic algorithms are mainly focused on maintaining a single-population of candidate tests, where the computation of the fitness function for a particular target branch is based on the closeness of the input execution path to the control dependency condition of that branch. The new approach utilizes acyclic predicate paths of the program's control flow graph containing the target branch as goals of separate search processes using distinct island populations. The advantages of the suggested approach is its ability to explore a greater variety of execution paths, and in certain conditions, increasing the search effectiveness. When applied to a collection of programs with a moderate number of branches, it has been shown experimentally that the proposed multiple-population algorithm outperforms the single-population algorithm significantly in terms of the number of executions, execution time, time improvement, and search effectiveness.