Test Case Generation for Boolean Expressions by Cell Covering

被引:5
作者
Yu, Lian [1 ]
Tsai, Wei-Tek [2 ,3 ,4 ,5 ]
机构
[1] Peking Univ, Sch Software & Microelect, Beijing 102600, Peoples R China
[2] Beihang Univ, Beijing 102600, Peoples R China
[3] Beihang Univ, Digital Soc, Beijing 102600, Peoples R China
[4] Beihang Univ, Block Chain Lab, Beijing 102600, Peoples R China
[5] Arizona State Univ, Sch Comp Informat & Decis Syst Engn, Tempe, AZ 85281 USA
关键词
Boolean expression testing; fault characterization; cell-covering problem; approximate algorithms; ERROR-DETECTION CAPABILITY; TEST DATA SELECTION; FAULT CLASSES; STRATEGIES;
D O I
10.1109/TSE.2017.2669184
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This paper characterizes Boolean expression faults as changes of the topological structures in terms of shrinking and/or expanding regions in K-map. A cell-covering is a set of cells (test cases) in K-map to cover the fault regions such that faults guarantee to be detected. Minimizing cell covering can be formulated as an Integer Linear Programming (ILP) problem. By analyzing the structures of the constraint coefficient matrix, the original problem can be decomposed into sub-programs that can be solved instead of the original problem, and this significantly reduces the time needed for ILP execution. An efficient approximate algorithm with a tight theoretical bound is used to address those complex Boolean expressions by corresponding the cell-covering problem to the setcovering problem. The optimal approach and the approximate approach are combined into a hybrid process to identify test cases based on the fraction analysis on the ILP relaxation. The proposed approach is evaluated by three sets of Boolean expressions and the results are compared with three leading approaches with respect to test sizes, time consumption and fault detection capabilities. For most Boolean expressions encountered, the proposed approach obtains optimal solutions quickly, and produces near-optimal solutions rapidly for those rare and complex expressions.
引用
收藏
页码:70 / 99
页数:30
相关论文
共 46 条
[1]   How to Optimize the Use of SAT and SMT Solvers for Test Generation of Boolean Expressions [J].
Arcaini, Paolo ;
Gargantini, Angelo ;
Riccobene, Elvinia .
COMPUTER JOURNAL, 2015, 58 (11) :2900-2920
[2]   Mutation operators for specifications [J].
Black, PE ;
Okun, V ;
Yesha, Y .
FIFTEENTH IEEE INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, PROCEEDINGS, 2000, :81-88
[3]  
Chen T. Y., 1999, Proceedings Sixth Asia Pacific Software Engineering Conference (ASPEC'99) (Cat. No.PR00509), P606, DOI 10.1109/APSEC.1999.809656
[4]   Two test data selection strategies towards testing of Boolean specification [J].
Chen, TY ;
Lau, MF .
COMPSAC 97 : TWENTY-FIRST ANNUAL INTERNATIONAL COMPUTER SOFTWARE & APPLICATIONS CONFERENCE, 1997, :608-611
[5]   Test case selection strategies based on Boolean specifications [J].
Chen, TY ;
Lau, MF .
SOFTWARE TESTING VERIFICATION & RELIABILITY, 2001, 11 (03) :165-180
[6]   APPLICABILITY OF MODIFIED CONDITION DECISION COVERAGE TO SOFTWARE TESTING [J].
CHILENSKI, JJ ;
MILLER, SP .
SOFTWARE ENGINEERING JOURNAL, 1994, 9 (05) :193-200
[7]  
Cormen T. H., 2009, Introduction to Algorithms, V3rd
[8]   HINTS ON TEST DATA SELECTION - HELP FOR PRACTICING PROGRAMMER [J].
DEMILLO, RA ;
LIPTON, RJ .
COMPUTER, 1978, 11 (04) :34-41
[9]  
Du D.-Z., 2011, Design and analysis of approximation algorithms
[10]  
Foster K. A., 1984, SIGSOFT Software Engineering Notes, V9, P120, DOI 10.1145/1010925.1010935