Mining Function Call Sequence Patterns Across Different Versions of the Project for Defect Detection

Author(s):  
Zhanqi Cui ◽  
Xiang Chen ◽  
Yongmin Mu ◽  
Zhihua Zhang ◽  
Xu Ma
2018 ◽  
Vol 27 (4) ◽  
pp. 776-782 ◽  
Author(s):  
Zhanqi Cui ◽  
Xiang Chen ◽  
Yongmin Mu ◽  
Minxue Pan ◽  
Rongcun Wang

Author(s):  
Rongcun Wang ◽  
Rubing Huang ◽  
Yansheng Lu ◽  
Binbin Qu

Regression test case reduction aims at selecting a representative subset from the original test pool, while retaining the largest possible fault detection capability. Cluster analysis has been proposed and applied for selecting an effective test case subset in regression testing. It groups test cases into clusters based on the similarity of historical execution profiles. In previous studies, historical execution profiles are represented as binary or numeric function coverage vectors. The vector-based similarity approaches only consider which functions or statements are covered and the number of times they are executed. However, the vector-based approaches do not take the relations and sequential information between function calls into account. In this paper, we propose cluster analysis of function call sequences to attempt to improve the fault detection effectiveness of regression testing even further. A test is represented as a function call sequence that includes the relations and sequential information between function calls. The distance between function call sequences is measured not only by the Levenshtein distance but also the Euclidean distance. To assess the effectiveness of our approaches, we designed and conducted experimental studies on five subject programs. The experimental results indicate that our approaches are statistically superior to the approaches based on the similarity of vectors (i.e. binary vectors and numeric vectors), random and greedy function-coverage-based maximization test case reduction techniques in terms of fault detection effectiveness. With respective to the cost-effectiveness, cluster analysis of sequences measured using the Euclidean distance is more effective than using the Levenshtein distance.


2012 ◽  
Vol 616-618 ◽  
pp. 2055-2059
Author(s):  
Min Luo

Formal method is a means to verify the reliability and safety of concurrent systems. Formal verification of model which automatically extracted from concurrent system built from high level language is a hot research topic in the field of model checking technology. With the focus on potential run time problems (deadlocks, memory leaks, the boundary data loss and other run-time errors) result from abnormal socket function call sequence, we analyze the sequence structure of the socket program and construct the Promela model of socket functions through the description of message data structures and channels, as well as define mapping rules of socket function to Promela. The socket function call sequence extraction algorithm and target Promela model generation algorithm are proposed by using linear temporal logic (LTL) to describe the property the socket function call sequence. A socket communication program analysis system has been constructed. The experiment result shows that the system can detect the potential run time problems of socket program effectively.


2017 ◽  
Vol 19 (6) ◽  
pp. 38
Author(s):  
Chengchao Guo ◽  
Pengfei Xu ◽  
Can Cui

2011 ◽  
Vol 131 (9) ◽  
pp. 1633-1641
Author(s):  
Toshifumi Honda ◽  
Kenji Obara ◽  
Minoru Harada ◽  
Hajime Igarashi

Sign in / Sign up

Export Citation Format

Share Document