Results 1 - 10
of
15
Combination testing strategies: A survey
- Software Testing, Verification, and Reliability
, 2005
"... Combination strategies are test case selection methods that identify test cases by combining values of the different test object input parameters based on some combinatorial strategy. This survey presents 16 different combination strategies, covering more than 40 papers that focus on one or several ..."
Abstract
-
Cited by 100 (6 self)
- Add to MetaCart
(Show Context)
Combination strategies are test case selection methods that identify test cases by combining values of the different test object input parameters based on some combinatorial strategy. This survey presents 16 different combination strategies, covering more than 40 papers that focus on one or several combination strategies. This collection represents most of the existing work performed on combination strategies. This survey describes the basic algorithms used by the combination strategies. Some properties of combination strategies, including coverage criteria and theoretical bounds on the size of test suites, are also included in this description. This survey paper also includes a subsumption hierarchy that attempts to relate the various coverage criteria associated with the identified combination strategies.
Automated software test data generation for complex programs
- Reliable Software Technologies
, 1998
"... We report on GADGET, a new software test generation system that uses combinatorial optimization to obtain condition/decision coverage of C/C++ programs. The GADGET system is fully automatic and supports all C/C++ language constructs. This allows us to generate tests for programs more complex than th ..."
Abstract
-
Cited by 17 (0 self)
- Add to MetaCart
We report on GADGET, a new software test generation system that uses combinatorial optimization to obtain condition/decision coverage of C/C++ programs. The GADGET system is fully automatic and supports all C/C++ language constructs. This allows us to generate tests for programs more complex than those previously reported in the literature. We address a number of issues that are encountered when automatically generating tests for complex software systems. These issues have not been discussed in earlier work on test-data generation, which concentrates on small programs (most often single functions) written in restricted programming languages. 1 Dynamic test data generation In this paper, we introduce the GADGET system, which uses a test data generation paradigm commonly known as dynamic test data generation. Dynamic test data generation was originally proposed by [Miller and Spooner, 1976] and then investigated further with the TESTGEN system of [Korel, 1990, Korel, 1996], the
Pairwise testing: A best practice that isn’t
- 22nd Annual Pacific Northwest Software Quality Conference
, 2004
"... James Bach ..."
An Evaluation of Combination Strategies for Test Case Selection
- Empirical Software Engineering, Available in SpringerLink electronic Online First version
, 2003
"... This paper presents results from a comparative evaluation of five combination strategies. Combination strategies are test case selection methods that combine “interesting ” values of the input parameters of a test subject to form test cases. This research comparatively evaluated five combination str ..."
Abstract
-
Cited by 9 (4 self)
- Add to MetaCart
This paper presents results from a comparative evaluation of five combination strategies. Combination strategies are test case selection methods that combine “interesting ” values of the input parameters of a test subject to form test cases. This research comparatively evaluated five combination strategies; the All Combination strategy (AC), the Each Choice strategy (EC), the Base Choice strategy (BC), Orthogonal Arrays (OA) and the algorithm from the Automatic Efficient Test Generator (AETG). AC satisfies n-wise coverage, EC and BC satisfy 1-wise coverage, and OA and AETG satisfy pair-wise coverage. The All Combinations strategy was used as a “gold standard ” strategy; it subsumes the others but is usually too expensive for practical use. The others were used in an experiment that used five programs seeded with 128 faults. The combination strategies were evaluated with respect to the number of test cases, the number of faults found, failure size, and number of decisions covered. The strategy that requires the least number of tests, Each Choice, found the smallest number of faults. Although the Base Choice strategy requires fewer test cases than Orthogonal Arrays and AETG, it found as many faults. Analysis also shows some properties of the combination strategies that appear significant. The two most important results are that the Each Choice strategy is unpredictable in terms of which faults will be revealed, possibly indicating that faults are found by chance, and that the Base Choice and the pair-wise combination strategies to some extent target different types of faults.
Input parameter modeling for combination strategies
, 2007
"... Combination strategies are test methods that generate test cases based on input parameter models. This paper suggests a structured modeling method used to translate requirements expressed in a general format into an input parameter model suitable for combination strategies. This paper also describes ..."
Abstract
-
Cited by 7 (0 self)
- Add to MetaCart
(Show Context)
Combination strategies are test methods that generate test cases based on input parameter models. This paper suggests a structured modeling method used to translate requirements expressed in a general format into an input parameter model suitable for combination strategies. This paper also describes results from two initial experiments exploring the efficiency and effectiveness of the modeling method. These results indicate that the resulting models may contain enough information to detect the vast majority of faults in the system under test. Further, results indicate that the modeling method is simple enough to use in practical testing.
Generating test items for checking illegal behavior in software testing
- In Proc. of 9th Asian Test Symposium (ATS2000
, 2000
"... Even for electrical appliances, testing for illegal behaviors becomes difficult since the software system in an electrical appliance has already become large in size. Actually, the conventional method cannot generate sufficient test items for illegal behaviors. But testing illegal behaviors becomes ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
(Show Context)
Even for electrical appliances, testing for illegal behaviors becomes difficult since the software system in an electrical appliance has already become large in size. Actually, the conventional method cannot generate sufficient test items for illegal behaviors. But testing illegal behaviors becomes more and more important, since the failure of electrical appliances would cause fatal effects on our daily life. We therefore propose a new method for generating appropriate test items to check illegal behaviors, which consists of the following steps: (1) Describe software behavior using use case notation, (2) Analyze illegal behavior by the deviation analysis technique, (3) Construct a software fault tree using the above information, and (4) Generate test items from the software fault tree. This paper also reports the experimental applications to actual development of an electrical appliance. The evaluation results identified that all necessary test items for illegal behaviors are included in the resultant test items. 1
Fast Antirandom (FAR) Test Generation
, 1998
"... Anti-random testing has proved useful in a series of empirical evaluations. The basic premise of anti-random testing is to chose new test vectors that are as far away from existing test inputs as possible. The distance measure is Hamming or Cartesian Distance. Unfortunately, this method essentially ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
Anti-random testing has proved useful in a series of empirical evaluations. The basic premise of anti-random testing is to chose new test vectors that are as far away from existing test inputs as possible. The distance measure is Hamming or Cartesian Distance. Unfortunately, this method essentially requires enumeration of the input space and computation of each input vector when used on an arbitrary set of existing test data. This prevents scale-up to large test sets and/or long input vectors. We present and empirically evaluate a technique to generate anti-random vectors that is computationally feasible for large input vectors and long sequences of tests. We also show how this fast anti-random test generation (FAR) can consider retained state (i. e. effects of subsequent inputs on each other). We evaluate effectiveness using branch coverage as the testing criterion. 1. Introduction Testing techniques employ a variety of mechanisms, automated, tool assisted, and manual, for test gen...
Constraint-based Test Generation for Pointer-based Data Structures
"... Abstract. In this paper, we propose an approach for automated test case generation based on techniques from Constraint Programming. We show how an imperative language can be extended with constraint variables and its operational semantics with constraints. By running a program in this extended langu ..."
Abstract
- Add to MetaCart
Abstract. In this paper, we propose an approach for automated test case generation based on techniques from Constraint Programming. We show how an imperative language can be extended with constraint variables and its operational semantics with constraints. By running a program in this extended language, we obtain constraints on the initial environment and heap. Solving these constrains, we obtain concrete test cases for the program. Our technique can handle primitive data such as integers, as well as arbitrary pointer-based data structures allocated on the heap. Standard CP search strategies can be used to express preferences on the generated test cases and to obtain the desired degree of coverage. 1
doi:10.1155/2008/165709 Research Article Antirandom Testing: A Distance-Based Approach
"... Random testing requires each test to be selected randomly regardless of the tests previously applied. This paper introduces the concept of antirandom testing where each test applied is chosen such that its total distance from all previous tests is maximum. This spans the test vector space to the max ..."
Abstract
- Add to MetaCart
(Show Context)
Random testing requires each test to be selected randomly regardless of the tests previously applied. This paper introduces the concept of antirandom testing where each test applied is chosen such that its total distance from all previous tests is maximum. This spans the test vector space to the maximum extent possible for a given number of vectors. An algorithm for generating antirandom tests is presented. Compared with traditional pseudorandom testing, antirandom testing is found to be very effective when a high-fault coverage needs to be achieved with a limited number of test vectors. The superiority of the new approach is even more significant for testing bridging faults. Copyright © 2008 Shen Hui Wu et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. 1.