Automatic Test Generation for N-way Combinatorial Testing

Slides:



Advertisements
Similar presentations
Mining Compressed Frequent- Pattern Sets Dong Xin, Jiawei Han, Xifeng Yan, Hong Cheng Department of Computer Science University of Illinois at Urbana-Champaign.
Advertisements

Orthogonal Drawing Kees Visser. Overview  Introduction  Orthogonal representation  Flow network  Bend optimal drawing.
Longest Common Subsequence
Operations Research Assistant Professor Dr. Sana’a Wafa Al-Sayegh 2 nd Semester ITGD4207 University of Palestine.
IPOG: A General Strategy for T-Way Software Testing
Combinatorial Testing Using Covering Arrays - Going Beyond Pairwise Testing Raghu Kacker, NIST Yu Lei, UTA 5/15/06.
Today’s Agenda  HW #1 Due  Quick Review  Finish Input Space Partitioning  Combinatorial Testing Software Testing and Maintenance 1.
GREEDY RANDOMIZED ADAPTIVE SEARCH PROCEDURES Reporter : Benson.
August 2005RSFDGrC 2005, Regina, Canada 1 Feature Selection Based on Relative Attribute Dependency: An Experimental Study Jianchao Han 1, Ricardo Sanchez.
MAE 552 Heuristic Optimization Instructor: John Eddy Lecture #16 3/1/02 Taguchi’s Orthogonal Arrays.
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 9 Functional Testing
Domain decomposition in parallel computing Ashok Srinivasan Florida State University COT 5410 – Spring 2004.
Security and Protection of Information, Brno Using quasigroups for secure encoding of file system Eliška Ochodková, Václav Snášel
Systems and Matrices (Chapter5)
The Theory of NP-Completeness 1. What is NP-completeness? Consider the circuit satisfiability problem Difficult to answer the decision problem in polynomial.
Introduction to variable selection I Qi Yu. 2 Problems due to poor variable selection: Input dimension is too large; the curse of dimensionality problem.
Charles J. Colbourn Computer Science and Engineering Arizona State University, Tempe, AZ Charles J. Colbourn Computer Science and Engineering Arizona State.
Pooling designs for clone library screening in the inhibitor complex model Department of Mathematics and Science National Taiwan Normal University (Lin-Kou)
Surya Bhupatiraju MIT PRIMES May 20 th, 2012 On the Complexity of the Marginal Consistency Problem.
Domain decomposition in parallel computing Ashok Srinivasan Florida State University.
Mixed Covering Arrays on Graphs Presenter: Latifa Zekaoui Joint work with Karen Meagher and Lucia Moura to appear in the Journal of Combinatorial Designs.
Network Flow Problems – The Assignment Problem
Custom Computing Machines for the Set Covering Problem Paper Written By: Christian Plessl and Marco Platzner Swiss Federal Institute of Technology, 2002.
An evolutionary approach for improving the quality of automatic summaries Constantin Orasan Research Group in Computational Linguistics School of Humanities,
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
CS 721 Project Implementation of Hypergraph Edge Covering Algorithms By David Leung ( )
Combinatorial Designs and Their Applications ( 組合設計及其應用 ) 應用數學系 傅恆霖.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
Assignment Problem: Hungarian Algorithm and Linear Programming collected from the Internet and extended by Longin Jan Latecki.
Estimating standard error using bootstrap
Chapter 7. Classification and Prediction
Overview Theory of Program Testing Goodenough and Gerhart’s Theory
Mathematical Foundations of AI
Greedy Technique.
Ryan Lekivetz JMP Division of SAS Abstract Covering Arrays
Software Fault Interactions and Implications for Software Testing
Assignment Problem: Hungarian Algorithm and Linear Programming collected from the Internet and extended by Longin Jan Latecki.
CSNB 143 Discrete Mathematical Structures
Design and Analysis of Algorithm
Haim Kaplan and Uri Zwick
Structural testing, Path Testing
ME 521 Computer Aided Design 15-Optimization
Computational Molecular Biology
Combinatorial Testing
Chapter 15 QUERY EXECUTION.
Computability and Complexity
Assignment Problem: Hungarian Algorithm and Linear Programming collected from the Internet and extended by Longin Jan Latecki.
Sergiy Vilkomir January 20, 2012
Unification Algorithm ChuChen
Chapter 7 Transportation, Assignment & Transshipment Problems
IPOG: A General Strategy for T-Way Software Testing
Applied Combinatorics, 4th Ed. Alan Tucker
Diversified Top-k Subgraph Querying in a Large Graph
3. Brute Force Selection sort Brute-Force string matching
Structural Optimization Design ( Structural Analysis & Optimization )
I.4 Polyhedral Theory (NW)
Assignment Problems Guoming Tang CSC Graduate Lecture.
3. Brute Force Selection sort Brute-Force string matching
I.4 Polyhedral Theory.
Complexity Theory in Practice
Section 11-1 Review and Preview
IPOG: A general strategy for t-way software testing by Lei, Yu, IEEE /2/2019 Mehra N Borazjany.
Approximation Algorithms for the Selection of Robust Tag SNPs
Simplex method (algebraic interpretation)
Scalable light field coding using weighted binary images
CS 2604 Data Structures and File Management
Assignment Problem: Hungarian Algorithm and Linear Programming collected from the Internet and extended by Longin Jan Latecki.
3. Brute Force Selection sort Brute-Force string matching
Presentation transcript:

Automatic Test Generation for N-way Combinatorial Testing Changhai Nie changhainie@seu.edu.cn Dept. of Computer Sci. & Eng. Southeast University

Dept. of Computer Sci. & Eng. 1 Introduction Automatic test generation: select a small number of tests to cover all test aspects to the greatest degree. The combinatorial design approach for testing has been studied and applied widely for its efficiency and effectiveness with a quite small test suite. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Combinatorial Testing R. Mandl defined the concept of pair-wise testing for the first time in 1985. require that every combination of valid values of arbitrary two system parameters be covered by at least one test. use the Orthogonal Latin Squares to generate tests in the Ada compiler testing. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Combinatorial Testing D. Cohen, et al. provided the AETG system for pair-wise, triple, or n-way combinations of a system’s parameters. Y. Lei, et al. offered PAIRWISE TEST. We proposed an algorithm for pair-wise testing based on the NETWORK model. Toshiaki Shiba et al. also suggested two different algorithms GA and ACA for n-way testing. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Combinatorial Testing Because the problem of generating a minimum test suit for combinatorial testing is NP-complete[4], none of these methods can assure that the generated test suites are the best. In most cases, the sizes of the test suites generated by them are approximately equal. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Combinatorial Testing D.R. Kuhn et al. investigated the applicability of combinatorial testing. In their experiments: about 20~40% software failures were caused by a certain value of one parameter, about 20~40% software failures were caused by a certain combination of two parameters, and about 20% software failures were caused by a certain combination of three parameters. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

N-way Combinatorial Testing Pair-wise testing is fit for most general applications. In some safety-critical situations, testers may require N-way Combinatorial testing: every combination of valid values of arbitrary n (n≥2) parameters be covered by at least one test. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

2 Concepts of N-way Testing Suppose a system has k parameters, each of which has a suite of discrete values. In most conditions, it is too expensive to test all the combinations of all parameters. It is a more practical method to generate a small test suit to cover all the possibility to the greatest degree. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Dept. of Computer Sci. & Eng. Pair-wise Testing Definition 1 Suppose A is a m×k matrix, and column j represents parameter Pj, whose element is from finite symbol set Tj (j = 1, 2,…, k). If column i and column j are arbitrary two columns in A that satisfy: all the combinations of symbols between set Ti and set Tj appear in the ordered pairs formed by column i and column j, A is called a pair-wise test table, which satisfies the pair-wise coverage criterion. Every row of A is a piece of test, and m is the number of test cases. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Dept. of Computer Sci. & Eng. N-way Testing Definition 2 Suppose A is a m×k matrix, and column j represents parameter Pj, whose element is from finite symbol set Tj(j = 1, 2,…, k). If column i1,i2,…,in are arbitrary n(2≤n≤k) columns in A that satisfy: all the combinations of symbols between set T1 , set T2 ,…, set Tn appear in the combinations formed by column i1, column i2,…, column in, A is called a n-way test table, which satisfies the n-way coverage criterion. Every row of A is a piece of test, and m is the number of test cases. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Dept. of Computer Sci. & Eng. Theorem Theorem 1 Suppose a system has k parameters P1,P2,…,Pk, and every parameter Pi has ti(i = 1,2,…,k) values, then there exists an n-way test table A whose rows satisfy: r≥max(ti1×ti2 ×… ×tin), (1≤i1≠i2…≠in≤k) . 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Dept. of Computer Sci. & Eng. Theorem Theorem 2 Suppose a system has k parameters, and every parameter Pi has ti (i = 1,2,…,k) values, where t1≥t2≥…≥tk, then the n-way test table A of the system has coverage p for the all combinations of arbitrary m(n≤m≤k)parameters: p ≥(t1 × t2 × … × tn)/ (t1 × t2 × … × tm). 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

3 N-way Testing Algorithms We propose two different test generation algorithms based on the combinatorial design for the n-way testing. Generate Tests using Greedy Algorithm (GA-N) Generate Tests in Parameter Order (IPO-N) 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

3.1 Generate Tests using Greedy Algorithm (GA-N) This test generation method for n-way testing is extended from AETG for pair-wise testing. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

3.1 Generate Tests using Greedy Algorithm (GA-N) Process (Greedy algorithm) Firstly, construct a set Uncover that contains all the combinations of valid values of arbitrary n parameters. Secondly, generate one test such that it can cover most combinations in Uncover. Add the test into the n-way test table M, and delete the combinations covered by it from Uncover. Finally, generate tests continuously in the same way until Uncover is empty. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Dept. of Computer Sci. & Eng. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

3.2 Generate Tests in Parameter Order (IPO-N) This test generation method for n-way testing is extended from PAIRTEST for pair-wise testing 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

3.2 Generate Tests in Parameter Order (IPO-N) Process Firstly, construct n-way test table M for the first n parameters. Secondly, extend M by another parameter to assure that every combination of valid values of n parameters in M is covered by at least one test. (1) horizontal growth: extend each existing test by one value of the new parameter, (2) vertical growth: add new tests to satisfy the n-way coverage criterion. Extend M continuously, until it contains all the parameters. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Dept. of Computer Sci. & Eng. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

4 Effectiveness Analysis To evaluate the efficiency of the algorithms, we implemented two automatic test generators based on them. We experimented with a computer consisting of a PIII processor of 733Mhz, and obtained some empirical results. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Empirical Data: IPO-N & GA-N 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Dept. of Computer Sci. & Eng. IPO-N Exceeds GA-N When n equals 2, the tests generated by GA-N are usually a few more than IPO-N, and the consumed time is also a little more, and the difference is not distinct. When n equals 3, the tests generated by GA-N are much more than IPO-N, and the consumed time is also more in evidence. Some other experiment results also show that IPO-N exceeds GA-N at the test number and the consumed time, when n is above 3. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Empirical Data: Related Methods 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Dept. of Computer Sci. & Eng. IPO-N Performs Well The experimental results also suggest that GA-N need to be optimized carefully. IPO-N can generate the smallest test suites for some systems such as X2, X4, X5 and X6, and in other cases the sizes of test suites generated by IPO-N are only a bit more than the smallest ones. These results seem to indicate that IPO-N is an effective algorithm, which performs well with respect to the size of generated test suites. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Dept. of Computer Sci. & Eng. 5 Conclusions We propose two different test generation algorithms based on combinatorial design approaches for the n-way combination testing, and suggest the algorithm IPO-N may be more feasible based on the empirical results. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Dept. of Computer Sci. & Eng. 5 Conclusions As shown in Table 1, with the increase of n, the number of tests increases rapidly, and the time consumed for the test generation grows sharply. We are searching novel algorithms for the n-way combination testing to improve the performance of test generators. 2019/4/30 Dept. of Computer Sci. & Eng. Southeast University

Thanks. Any Question? changhainie@seu.edu.cn Changhai Nie Dept. of Computer Sci. & Eng. Southeast University