Test input generation from cause-effect graphs

被引:9
|
作者
Ufuktepe, Deniz Kavzak [1 ]
Ayav, Tolga [2 ]
Belli, Fevzi [2 ,3 ]
机构
[1] Univ Missouri, Dept Elect Engn & Comp Sci, Columbia, MO USA
[2] Izmir Inst Technol, Dept Comp Engn, Izmir, Turkey
[3] Paderborn Univ, Dept Elect Engn & Informat Technol, Paderborn, Germany
关键词
Test input generation; Specification-based testing; Cause-effect graph; Spectral analysis; Boolean expressions; SELECTION-STRATEGIES;
D O I
10.1007/s11219-021-09560-3
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Cause-effect graphing is a well-known requirement-based and systematic testing method with a heuristic approach. Since it was introduced by Myers in 1979, there have not been any sufficiently comprehensive studies to generate test inputs from these graphs. However, there exist several methods for test input generation from Boolean expressions. Cause-effect graphs can be more convenient for a wide variety of users compared to Boolean expressions. Moreover, they can be used to enforce common constraints and rules on the system variables of different expressions of the system. This study proposes a new mutant-based test input generation method, Spectral Testing for Boolean specification models based on spectral analysis of Boolean expressions using mutations of the original expression. Unlike Myers' method, Spectral Testing is an algorithmic and deterministic method, in which we model the possible faults systematically. Furthermore, the conversion of cause-effect graphs between Boolean expressions is explored so that the existing test input generation methods for Boolean expressions can be exploited for cause-effect graphing. A software is developed as an open-source extendable tool for generating test inputs from cause-effect graphs by using different methods and performing mutation analysis for quantitative evaluation on these methods for further analysis and comparison. Selected methods, MI, MAX-A, MUTP, MNFP, CUTPNFP, MUMCUT, Unique MC/DC, and Masking MC/DC are implemented together with Myers' technique and the proposed Spectral Testing in the developed tool. For mutation testing, 9 common fault types of Boolean expressions are modeled, implemented, and generated in the tool. An XML-based standard on top of GraphML representing a cause-effect graph is proposed and is used as the input type to the approach. An empirical study is performed by a case study on 5 different systems with various requirements, including the benchmark set from the TCAS-II system. Our results show that the proposed XML-based cause-effect graph model can be used to represent system requirements. The developed tool can be used for test input generation from proposed cause-effect graph models and can perform mutation analysis to distinguish between the methods with respect to the effectiveness of test inputs and their mutant kill scores. The proposed Spectral Testing method outperforms the state-of-the-art methods in the context of critical systems, regarding both the effectiveness and mutant kill scores of the generated test inputs, and increasing the chances of revealing faults in the system and reducing the cost of testing. Moreover, the proposed method can be used as a separate or complementary method to other well-performing test input generation methods for covering specific fault types.
引用
收藏
页码:733 / 782
页数:50
相关论文
共 50 条
  • [1] Test input generation from cause–effect graphs
    Deniz Kavzak Ufuktepe
    Tolga Ayav
    Fevzi Belli
    Software Quality Journal, 2021, 29 : 733 - 782
  • [2] Test case Generation from Cause-Effect Graph based on Model Transformation
    Son, Hyun Seung
    Kim, R. Young Chul
    Park, Young B.
    2014 INTERNATIONAL CONFERENCE ON INFORMATION SCIENCE AND APPLICATIONS (ICISA), 2014,
  • [3] Investigating Quantum Cause-Effect Graphs
    Oldfield, Noah
    Yue, Tao
    Ali, Shaukat
    3RD INTERNATIONAL WORKSHOP ON QUANTUM SOFTWARE ENGINEERING (Q-SE 2022), 2022, : 8 - 15
  • [4] FUNCTIONAL TESTING OF SOFTWARE USING CAUSE-EFFECT GRAPHS
    ELMENDORF, WR
    IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS, 1976, 12 (02) : 305 - 305
  • [5] From Input to Failure: Explaining Program Behavior via Cause-Effect Chains
    Smytzek, Marius
    2023 IEEE/ACM 45TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: COMPANION PROCEEDINGS, ICSE-COMPANION, 2023, : 302 - 304
  • [6] Specification-based testing using cause-effect graphs
    Paradkar, A
    Tai, KC
    Vouk, MA
    ANNALS OF SOFTWARE ENGINEERING, 1997, 4 : 133 - 157
  • [7] CAUSE-EFFECT STRUCTURES
    CZAJA, L
    INFORMATION PROCESSING LETTERS, 1988, 26 (06) : 313 - 319
  • [8] Extraction of Cause-Effect Relationships from Psychological Test Data Using Logical Methods
    Panov, A. I.
    SCIENTIFIC AND TECHNICAL INFORMATION PROCESSING, 2014, 41 (05) : 275 - 282
  • [9] Formalizing Arguments From Cause-Effect Rules
    Sedki, Karima
    RECENT TRENDS AND FUTURE TECHNOLOGY IN APPLIED INTELLIGENCE, IEA/AIE 2018, 2018, 10868 : 279 - 285
  • [10] Hierarchical cause-effect structures
    Ustimenko, AP
    PERSPECTIVES OF SYSTEM INFORMATICS, 2000, 1755 : 198 - 207