Results 1 - 10
of
71
Test-Data Generation Using Genetic Algorithms
- Software Testing, Verification And Reliability
, 1999
"... This paper presents a technique that uses a genetic algorithm for automatic test-data generation. A genetic algorithm is a heuristic that mimics the evolution of natural species in searching for the optimal solution to a problem. In the test-data generation application, the solution sought by the ge ..."
Abstract
-
Cited by 110 (0 self)
- Add to MetaCart
This paper presents a technique that uses a genetic algorithm for automatic test-data generation. A genetic algorithm is a heuristic that mimics the evolution of natural species in searching for the optimal solution to a problem. In the test-data generation application, the solution sought by the genetic algorithm is test data that causes execution of a given statement, branch, path, or definition-use pair in the program under test. The test-data-generation technique was implemented in a tool called TGen in which parallel processing was used to improve the performance of the search. To experiment with TGen, a random test-data generator, called Random, was also implemented. Both TGen and Random were used to experiment with the generation of test-data for statement and branch coverage of six programs.
Automated Program Flaw Finding using Simulated Annealing
- In the proceedings of the ACM/SIGSOFT International Symposium on Software Testing and Analysis (ISSTA). Pages
, 1998
"... One of the major costs in a software project is the construction of test-data. This paper outlines a generalised test-case data generation framework based on optimisation techniques. The framework can incorporate a number of testing criteria, for both functional and non-functional properties. Applic ..."
Abstract
-
Cited by 73 (16 self)
- Add to MetaCart
One of the major costs in a software project is the construction of test-data. This paper outlines a generalised test-case data generation framework based on optimisation techniques. The framework can incorporate a number of testing criteria, for both functional and non-functional properties. Application of the optimisation framework to testing specification failures and exception conditions is illustrated. The results of a number of small case studies are presented and show the efficiency and effectiveness of this dynamic optimisation-base approach to generating test-data. 1.1 Keywords Automatic test-case generation, software testing, formal specifications, exception conditions, optimisation techniques, simulated annealing. 2
An automated framework for structural test-data generation
- Proceedings of the International Conference on Automated Software Engineering; IEEE
, 1998
"... Structural testing criteria are mandated in many software development standards and guidelines. The process of generating test-data to achieve 100 % coverage of a given structural coverage metric is labour intensive and expensive. This paper presents an approach to automate the generation of such te ..."
Abstract
-
Cited by 62 (12 self)
- Add to MetaCart
Structural testing criteria are mandated in many software development standards and guidelines. The process of generating test-data to achieve 100 % coverage of a given structural coverage metric is labour intensive and expensive. This paper presents an approach to automate the generation of such test-data. The test-data generation is based on the application of a dynamic optimisation-based search for the required test-data. The same approach can be be generalised to solve other test-data generation problems. Three such applications are discussed { boundary value analysis, assertion/run-time exception testing and component re-use testing. Aprototype tool-set has been developed to facilitate the automatic generation of test-data for these structural testing problems. The results of preliminary experiments using this technique and the prototype tool-set are presented and show the e ciency and e ectiveness of this approach. 1
Testability Transformation
- IEEE TRANSACTIONS ON SOFTWARE ENGINEERING
, 2004
"... A testability transformation is a source-to-source transformation that aims to improve the ability of a given test generation method to generate test data for the original program. This paper ..."
Abstract
-
Cited by 50 (26 self)
- Add to MetaCart
A testability transformation is a source-to-source transformation that aims to improve the ability of a given test generation method to generate test data for the original program. This paper
Exploring Very Large State Spaces Using Genetic Algorithms
- SOFTWARE TOOLS FOR TECHNOLOGY TRANSFER
"... We present a novel framework for exploring very large state spaces of concurrent reactive systems. Our framework exploits application-independent heuristics using genetic algorithms to guide a state-space search towards error states. We have implemented this framework in conjunction with VeriSoft, ..."
Abstract
-
Cited by 40 (2 self)
- Add to MetaCart
We present a novel framework for exploring very large state spaces of concurrent reactive systems. Our framework exploits application-independent heuristics using genetic algorithms to guide a state-space search towards error states. We have implemented this framework in conjunction with VeriSoft, a tool for exploring the state spaces of software applications composed of several concurrent processes executing arbitrary code. We present experimental results obtained with several examples of programs, including a C implementation of a public-key authentication protocol. We discuss heuristics and properties of state spaces that help a genetic search detect deadlocks and assertion violations. For nding errors in very large state spaces, our experiments show that a genetic search using simple heuristics can significantly outperform random and systematic searches.
Search-Based Software Engineering
"... ... The paper briefly sets out key ingredients for successful reformulation and evaluation criteria for Search-Based Software Engineering. ..."
Abstract
-
Cited by 40 (2 self)
- Add to MetaCart
... The paper briefly sets out key ingredients for successful reformulation and evaluation criteria for Search-Based Software Engineering.
Evolutionary testing in the presence of loop-assigned flags: A testability transformation approach
- In Proceedings of the International Symposium on Software Testing and Analysis (ISSTA 2004
, 2004
"... Evolutionary testing is an effective technique for automatically generating good quality test data. However, for structural testing, the technique degenerates to random testing in the presence of flag variables, which also present problems for other automated test data generation techniques. Previou ..."
Abstract
-
Cited by 39 (16 self)
- Add to MetaCart
Evolutionary testing is an effective technique for automatically generating good quality test data. However, for structural testing, the technique degenerates to random testing in the presence of flag variables, which also present problems for other automated test data generation techniques. Previous work on the flag problem does not address flags assigned in loops. This paper introduces a testability transformation that transforms programs with loop-assigned flags so that existing genetic approaches can be successfully applied. It then presents empirical data demonstrating the effectiveness of the transformation. Untransformed, the genetic algorithm flounders and is unable to find a solution. Two transformations are considered. The first allows the search to find a solution. The second reduces the time taken by an order of magnitude and, more importantly, reduces the slope of the cost increase; thus, greatly increasing the complexity of the problem to which the genetic algorithm can be applied. The paper also presents a second empirical study showing that loop-assigned flags are prevalent in real world code. They account for just under 11 % of all flags.
Automated test-data generation for exception conditions
- Software - Practice and Experience
, 2000
"... This paper presents a technique for automatically generating test-data to test exceptions. The approach is based on the application of a dynamic global optimization based search for the required test-data. The authors ’ work has focused on test-data generation for safety-critical systems. Such syste ..."
Abstract
-
Cited by 33 (5 self)
- Add to MetaCart
This paper presents a technique for automatically generating test-data to test exceptions. The approach is based on the application of a dynamic global optimization based search for the required test-data. The authors ’ work has focused on test-data generation for safety-critical systems. Such systems must be free from anomalous and uncontrolled behaviour. Typically, it is easier to prove the absence of any exceptions than proving that the exception handling is safe. A process for integrating automated testing with exception freeness proofs is presented as a way forward for tackling the special needs of safety critical systems. The results of a number of simple case-studies are presented and show the technique to be effective. The major result shows the application of the technique to a commercial aircraft engine controller system as part of a proof of exception freeness. This illustrates how automated testing can be effectively integrated into a formal safety-critical process to reduce costs and add value. Copyright © 2000 John Wiley & Sons, Ltd. KEY WORDS: test-data generation; verification; exception conditions
A strategy for using genetic algorithms to automate branch and fault-based testing
- The Computer Journal
, 1998
"... ..."

