Title :
Detecting infeasible branches based on code patterns
Author :
Sun Ding ; Hongyu Zhang ; Hee Beng Kuan Tan
Author_Institution :
Nanyang Technol. Univ., Singapore, Singapore
Abstract :
Infeasible branches are program branches that can never be exercised regardless of the inputs of the program. Detecting infeasible branches is important to many software engineering tasks such as test case generation and test coverage measurement. Applying full-scale symbolic evaluation to infeasible branch detection could be very costly, especially for a large software system. In this work, we propose a code pattern based method for detecting infeasible branches. We first introduce two general patterns that can characterize the source code containing infeasible branches. We then develop a tool, called Pattern-based method for Infeasible branch Detection (PIND), to detect infeasible branches based on the discovered code patterns. PIND only performs symbolic evaluation for the branches that exhibit the identified code patterns, therefore significantly reduce the number of symbolic evaluations required. We evaluate PIND from two aspects: accuracy and efficiency. The experimental results show that PIND can effectively and efficiently detect infeasible branches in real-world Java and Android programs. We also explore the application of PIND in measuring test case coverage,
Keywords :
program diagnostics; program testing; Android programs; Java programs; PIND method; code pattern based method; code pattern discovery; full-scale symbolic evaluation; infeasible branch detection; pattern-based method; program branches; software engineering tasks; symbolic evaluation; test case coverage measurement; test case generation; test coverage measurement; Accuracy; Androids; Humanoid robots; Java; Pattern recognition; Semantics; Syntactics; Infeasible branch; code patterns; program analysis; test case coverage;
Conference_Titel :
Software Maintenance, Reengineering and Reverse Engineering (CSMR-WCRE), 2014 Software Evolution Week - IEEE Conference on
Conference_Location :
Antwerp
DOI :
10.1109/CSMR-WCRE.2014.6747227