Analysis and testing of programs with exception handling constructs

被引:80
|
作者
Sinha, S [1 ]
Harrold, MJ [1 ]
机构
[1] Georgia Inst Technol, Coll Comp, Atlanta, GA 30332 USA
基金
美国国家科学基金会;
关键词
exception handling; control flow analysis; control dependence analysis; data flow analysis; program slicing; structural testing;
D O I
10.1109/32.877846
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Analysis techniques, such as control flow, data flow, and control dependence, are used for a variety of software engineering tasks, including structural and regression testing, dynamic execution profiling, static and dynamic slicing, and program understanding. To be applicable to programs in languages such as Java and C++, these analysis techniques must account for the effects of exception occurrences and exception handling constructs; failure to do so can cause the analysis techniques to compute incorrect results and, thus, limit the usefulness of the applications that use them. This paper discusses the effects of exception handling constructs on several analysis techniques. The paper presents techniques to construct representations for programs with explicit exception occurrences-exceptions that are raised explicitly through throw statements-and exception handling constructs. The paper presents algorithms that use these representations to perform the desired analyses. The paper also discusses several software engineering applications that use these analyses. Finally, the paper describes empirical results pertaining to the occurrence of exception handling constructs in Java programs and their effect on some analysis tasks.
引用
收藏
页码:849 / 871
页数:23
相关论文
共 50 条
  • [21] Improving the robustness and reliability of object-oriented programs through exception analysis and testing
    Mao, CY
    Lu, YS
    ICECCS 2005: 10TH IEEE INTERNATIONAL CONFERENCE ON ENGINEERING OF COMPLEX COMPUTER SYSTEMS, PROCEEDINGS, 2005, : 432 - 439
  • [22] WORKFLOW TEMPORAL EXCEPTION HANDLING AND ANALYSIS METHOD
    Zou, Shaojun
    Peng, Xuange
    Sun, Hongjun
    INTERNATIONAL SYMPOSIUM ON COMPUTER SCIENCE & TECHNOLOGY, PROCEEDINGS, 2009, : 339 - 342
  • [23] Assessing exception handling testing practices in open-source libraries
    Luan P. Lima
    Lincoln S. Rocha
    Carla I. M. Bezerra
    Matheus Paixao
    Empirical Software Engineering, 2021, 26
  • [24] Testing Requirements for an Embedded Operating System: the Exception Handling Case Study
    Beque, Lucieli Tolfo
    Pra, Thiago Dai
    Cota, Erika
    LATW: 2009 10TH LATIN AMERICAN TEST WORKSHOP, 2009, : 129 - 134
  • [25] Assessing exception handling testing practices in open-source libraries
    Lima, Luan P.
    Rocha, Lincoln S.
    Bezerra, Carla I. M.
    Paixao, Matheus
    EMPIRICAL SOFTWARE ENGINEERING, 2021, 26 (05)
  • [26] EXCEPTION HANDLING IN ROBOTICS
    COX, IJ
    GEHANI, NH
    COMPUTER, 1989, 22 (03) : 43 - 49
  • [27] Backjumping is Exception Handling
    Robbins, Ed
    King, Andy
    Howe, Jacob M.
    THEORY AND PRACTICE OF LOGIC PROGRAMMING, 2021, 21 (02) : 125 - 144
  • [28] Templates and exception handling
    Stevens, A
    DR DOBBS JOURNAL, 1999, 24 (03): : 103 - 105
  • [29] HANDLING THE EVIDENTIAL EXCEPTION
    MUNDAY, R
    CRIMINAL LAW REVIEW, 1988, : 345 - 354
  • [30] Exception handling in Kylix
    Boling, E
    Jazdzewski, C
    DR DOBBS JOURNAL, 2001, 26 (11): : 66 - +