Feedback-Driven Incremental Symbolic Execution

被引:3
|
作者
Yi, Qiuping [1 ]
Yang, Guowei [2 ]
机构
[1] Beijing Univ Posts & Telecommun, Beijing, Peoples R China
[2] Univ Queensland, Brisbane, Qld, Australia
来源
2022 IEEE 33RD INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING (ISSRE 2022) | 2022年
基金
美国国家科学基金会;
关键词
symbolic execution; incremental analysis; feedback loop; static analysis;
D O I
10.1109/ISSRE55969.2022.00055
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Incremental symbolic execution addresses the scalability problem of symbolic execution by concentrating on incremental behaviors that are introduced by the changes during program evolution. However, the state-of-the-art techniques still face the challenge to efficiently and precisely explore incremental program behaviors. In this paper, we present FENSE, a novel approach for incremental symbolic execution which checks whether the current path may subsume different incremental behavior from previous explorations. This is enabled by summarizing previously explored paths by recording the variables that may induce different incremental behaviors at each branch location. Our approach can identify redundant paths which share the same incremental behavior as previous explorations during test generation. Pruning away such redundant paths can lead to a potentially exponential redunction in the number of explored paths. We implemented a prototype of FENSE and conducted experiments on a set of real-world applications. The experimental results show that our approach is effective in reducing the number of explored paths as well as the execution time, compared with the state-of-the-art techniques.
引用
收藏
页码:505 / 516
页数:12
相关论文
共 50 条
  • [1] Directed Incremental Symbolic Execution
    Person, Suzette
    Yang, Guowei
    Rungta, Neha
    Khurshid, Sarfraz
    PLDI 11: PROCEEDINGS OF THE 2011 ACM CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION, 2011, : 504 - 515
  • [2] Directed Incremental Symbolic Execution
    Yang, Guowei
    Person, Suzette
    Rungta, Neha
    Khurshid, Sarfraz
    ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2014, 24 (01)
  • [3] Directed Incremental Symbolic Execution
    Person, Suzette
    Yang, Guowei
    Rungta, Neha
    Khurshid, Sarfraz
    ACM SIGPLAN NOTICES, 2011, 46 (06) : 504 - 515
  • [4] Conc-iSE: Incremental Symbolic Execution of Concurrent Software
    Guo, Shengjian
    Kusano, Markus
    Wang, Chao
    2016 31ST IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE), 2016, : 531 - 542
  • [5] Pinaka: Symbolic Execution Meets Incremental Solving (Competition Contribution)
    Chaudhary, Eti
    Joshi, Saurabh
    TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, PT III, 2019, 11429 : 234 - 238
  • [6] Chopped Symbolic Execution
    Trabish, David
    Mattavelli, Andrea
    Rinetzky, Noam
    Cadar, Cristian
    PROCEEDINGS 2018 IEEE/ACM 40TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2018, : 350 - 360
  • [7] Symbolic Execution-Driven Extraction of the Parallel Execution Plans of Spark Applications
    Baresi, Luciano
    Denaro, Giovanni
    Quattrocchi, Giovanni
    ESEC/FSE'2019: PROCEEDINGS OF THE 2019 27TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, 2019, : 246 - 256
  • [8] Global Decision Making Over Deep Variability in Feedback-Driven Software Development
    Kienzle, Jorg
    Combemale, Benoit
    Mussbacher, Gunter
    Alam, Omar
    Bordeleau, Francis
    Burgueno, Lola
    Engels, Gregor
    Galasso, Jessie
    Jezequel, Jean-Marc
    Kemme, Bettina
    Mosser, Sebastien
    Sahraoui, Houari
    Schiedermeier, Max
    Syriani, Eugene
    PROCEEDINGS OF THE 37TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE 2022, 2022,
  • [9] NODEST: Feedback-Driven Static Analysis of Node.js']js Applications
    Nielsen, Benjamin Barslev
    Hassanshahi, Behnaz
    Gauthier, Francois
    ESEC/FSE'2019: PROCEEDINGS OF THE 2019 27TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, 2019, : 455 - 465
  • [10] Symbolic Execution for Randomized Programs
    Susag, Zachary
    Lahiri, Sumit
    Hsu, Justin
    Roy, Subhajit
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2022, 6 (OOPSLA):