PATH-ANALYSIS TESTING OF CONCURRENT PROGRAMS

被引:28
作者
YANG, RD [1 ]
CHUNG, CG [1 ]
机构
[1] MITAC INT CORP, TAIPEI, TAIWAN
关键词
SOFTWARE TESTING; CONCURRENT PROGRAM TESTING; PATH ANALYSIS TESTING; VALIDATION;
D O I
10.1016/0950-5849(92)90093-5
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Path analysis testing is a widely used approach to program testing. However, the conventional path analysis testing method is designed specifically for sequential program testing; it is inapplicable to concurrent program testing because of the existence of multi-loci of control and task synchronizations. A path analysis approach to concurrent program testing is proposed. A concurrent path model is presented to model the execution behaviour of concurrent programs. In the model, an execution of a concurrent program is seen as involving a concurrent path (which is comprised of the paths of all concurrent tasks), and the tasks' synchronizations are modelled as a concurrent route to traverse the concurrent path involved in the execution. Accordingly, testing is a process to examine the correctness of each concurrent route along all concurrent paths of concurrent programs. Examples are given to demonstrate the effectiveness of path analysis testing for concurrent programs and some practical issues of path analysis testing, namely, test path selection, test generation, and test execution, are discussed. Moreover, the errors of concurrent programs are classified into three classes: domain errors, computation errors, and missing path errors, similar to the error classification for sequential programs. Based on the error classification, the potential reliability of path analysis testing for concurrent programs is assessed.
引用
收藏
页码:43 / 56
页数:14
相关论文
共 20 条
[1]   REPRODUCIBLE TESTING OF MONITORS [J].
BRINCHHANSEN, P .
SOFTWARE-PRACTICE & EXPERIENCE, 1978, 8 (06) :721-729
[2]  
CHIA CY, 1989, THESIS NCTU TAIWAN
[3]  
DILLON LK, 1988, 2ND P WORKSH SOFTW T, P114
[4]   A PROBE EFFECT IN CONCURRENT PROGRAMS [J].
GAIT, J .
SOFTWARE-PRACTICE & EXPERIENCE, 1986, 16 (03) :225-233
[5]   MONITORING FOR DEADLOCK AND BLOCKING IN ADA TASKING [J].
GERMAN, SM .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1984, 10 (06) :764-777
[6]  
Goodenough J. B., 1975, IEEE Transactions on Software Engineering, VSE-1, P156, DOI 10.1109/TSE.1975.6312836
[7]  
Hansen P. B., 1973, Software - Practice and Experience, V3, P145, DOI 10.1002/spe.4380030206
[8]  
HELMBOLD D, 1985, IEEE SOFTWARE, V2, P47, DOI 10.1109/MS.1985.230351
[9]  
Howden W. E., 1976, IEEE Transactions on Software Engineering, VSE-2, P208, DOI 10.1109/TSE.1976.233816
[10]  
HU HC, 1989, THESIS NCTU TAIWAN