Results 1 - 10
of
21
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
A Search-Based Automated Test-Data Generation Framework for Safety Critical Software
, 2000
"... Software ..."
The way forward for unifying dynamic test case generation: The optimisation-based approach
- In International Workshop on Dependable Computing and Its Applications
, 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. This framework can incorporate a number of testing criteria unifying both functional and non-function testing. Applic ..."
Abstract
-
Cited by 15 (8 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. This framework can incorporate a number of testing criteria unifying both functional and non-function testing. Application of the optimisation based approach are given for worst-case execution time, specification conformance, structural coverage and exception condition testing. The results of a number of small example case Software testing is an expensive process, typically consuming at least 50 % of the total costs involved in developing software [1]. Automation of the testing process is desirable both to reduce the development costs and also to improve the quality of (or at least confidence in) software. While automation of the testing process – the maintenance and execution of tests – is becoming commercially wide spread, the
2009a. An Analysis and Survey of the Development of Mutation Testing
"... Abstract — Mutation Testing is a fault–based software testing technique that has been widely studied for over three decades. The literature on Mutation Testing has contributed a set of approaches, tools, developments and empirical results which have not been surveyed in detail until now. This paper ..."
Abstract
-
Cited by 9 (2 self)
- Add to MetaCart
Abstract — Mutation Testing is a fault–based software testing technique that has been widely studied for over three decades. The literature on Mutation Testing has contributed a set of approaches, tools, developments and empirical results which have not been surveyed in detail until now. This paper provides a comprehensive analysis and survey of Mutation Testing. The paper also presents the results of several development trend analyses. These analyses provide evidence that Mutation Testing techniques and tools are reaching a state of maturity and applicability, while the topic of Mutation Testing itself is the subject of increasing interest. Index Terms — mutation testing, survey I.
Delta execution for efficient state-space exploration of object-oriented programs
- IN ISSTA’07: PROCEEDINGS OF THE 2007 INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS
, 2007
"... State-space exploration is the essence of model checking and an increasingly popular approach for automating test generation. A key issue in exploration of object-oriented programs is handling the program state, in particular the heap. Previous research has focused on standard program execution that ..."
Abstract
-
Cited by 8 (3 self)
- Add to MetaCart
State-space exploration is the essence of model checking and an increasingly popular approach for automating test generation. A key issue in exploration of object-oriented programs is handling the program state, in particular the heap. Previous research has focused on standard program execution that operates on one state/heap. We present Delta Execution, a technique that simultaneously operates on several states/heaps. Delta execution exploits the fact that many execution paths in state-space exploration partially overlap and speeds up the exploration by sharing the common parts across the executions and separately executing only the “deltas ” where the executions differ. The heart of Delta Execution is an efficient representation and manipulation of sets of states/heaps. We have implemented Delta Execution in two model checkers: JPF and BOX. JPF is a popular general-purpose model checker for Java programs, and BOX is a specialized model checker that we have developed for efficient exploration of sequential Java programs. We have evaluated Delta Execution for (bounded) exhaustive exploration of ten basic subject programs without errors. The experimental results show that on average Delta Execution improves the exploration time 10.97x (over an order of magnitude) in JPF and 2.07x in BOX, while taking on average 1.51x less memory in JPF and roughly the same amount of memory in BOX. We have also evaluated Delta Execution for one larger case study with errors, where the exploration time improved up to 1.43x. Additionally, the experimental results for abstract matching, a recently proposed non-exhaustive exploration in JPF, of four subject programs show that on average Delta Execution improves the exploration time 3.37x.
Automatic Test Data Generation for Programs with Integer and Float Variables
- In 16th IEEE International Conference on Automated Software Engineering(ASE01
, 2001
"... This paper presents a novel approach for automated test data generation of imperative programs containing integer, boolean and/or float variables. Our approach is based on consistency techniques integrating integer and float variables. We handle statement, branch and path coverage criteria. Our pu ..."
Abstract
-
Cited by 7 (2 self)
- Add to MetaCart
This paper presents a novel approach for automated test data generation of imperative programs containing integer, boolean and/or float variables. Our approach is based on consistency techniques integrating integer and float variables. We handle statement, branch and path coverage criteria. Our purpose is thus to automatically generate test data that will cause the program to execute a statement, to traverse a branch or to traverse a specified path. For path coverage, the specified path is transformed into a path constraint which is solved by an interval-based constraint solving algorithm handling integer, boolean and real variables. A valid test input is then extracted from the interval solutions. For statement (and branch) coverage, a path reaching the specified statement or branch is dynamically constructed. Our algorithm for path coverage is then applied. The search for a suitable path and the solving of path constraints make an extensive use of consistency techniques.
The state problem for test generation in simulink
- in Proceedings of the 8th annual Conference on Genetic and Evolutionary Computation (GECCO ’06). ACM
"... Search based test-data generation has proved successful for codelevel testing. In this paper we investigate the application of such approaches at the higher levels of abstraction offered by Matlab-Simulink models. The presence of persistent state has been shown to be problematic at the code level an ..."
Abstract
-
Cited by 6 (2 self)
- Add to MetaCart
Search based test-data generation has proved successful for codelevel testing. In this paper we investigate the application of such approaches at the higher levels of abstraction offered by Matlab-Simulink models. The presence of persistent state has been shown to be problematic at the code level and such difficulties remain when Matlab-Simulink models are to be tested. In such cases, sequences of inputs that can put the model under test into particular states are needed to enable the underlying test goals to be achieved. Simple search guidance appears to be insufficient and results in a ‘flat ’ cost function landscape. To address this problem, we introduce a technique called tracing and deducing, which helps provide better guidance to the search, allowing our developed tools to home in on the targeted test-data.
Automatic Mutation Test Input Data Generation via Ant Colony ABSTRACT
"... Fault-based testing is often advocated to overcome limitations of other testing approaches; however it is also recognized as being expensive. On the other hand, evolutionary algorithms have been proved suitable for reducing the cost of data generation in the context of coverage based testing. In thi ..."
Abstract
-
Cited by 5 (0 self)
- Add to MetaCart
Fault-based testing is often advocated to overcome limitations of other testing approaches; however it is also recognized as being expensive. On the other hand, evolutionary algorithms have been proved suitable for reducing the cost of data generation in the context of coverage based testing. In this paper, we propose a new evolutionary approach based on ant colony optimization for automatic test input data generation in the context of mutation testing to reduce the cost of such a test strategy. In our approach the ant colony optimization algorithm is enhanced by a probability density estimation technique. We compare our proposal with other evolutionary algorithms, e.g., Genetic Algorithm. Our preliminary results on JAVA testbeds show that our approach performed significantly better than other alternatives.
On-the-fly generation of k-path tests for C functions
- In Proceedings of the 19th IEEE International Conference on Automated Software Engineering
, 2004
"... We present a method for the automatic generation of tests satisfying the all-paths criterion, with a user-defined limit, k, on the number of loop iterations in the covered paths. We have implemented a prototype for C code. We illustrate our approach on a representative example of a C function contai ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
We present a method for the automatic generation of tests satisfying the all-paths criterion, with a user-defined limit, k, on the number of loop iterations in the covered paths. We have implemented a prototype for C code. We illustrate our approach on a representative example of a C function containing data-structures of variable dimensions, loops with variable numbers of iterations and many infeasible paths. We explain why our method is efficient enough to scale up to the unit testing of realistic programs. It is flexible enough to take into account certain specifications of the tested code. This is why we believe that it could become the cornerstone of a fully automatic grey-box testing process, based on the novel combination of code instrumentation and constraint solving described here. 1.

