A synergistic approach to improving symbolic execution using test ranges

被引:5
|
作者
Yang, Guowei [1 ]
Qiu, Rui [2 ]
Khurshid, Sarfraz [2 ]
Pasareanu, Corina S. [3 ]
Wen, Junye [1 ]
机构
[1] Texas State Univ, Dept Comp Sci, 601 Univ Dr, San Marcos, TX 78666 USA
[2] Univ Texas Austin, Elect & Comp Engn, Austin, TX 78712 USA
[3] Carnegie Mellon Univ, NASA Ames, Moffett Field, CA 94035 USA
基金
美国国家科学基金会;
关键词
MODEL-CHECKING; CUTE;
D O I
10.1007/s11334-019-00331-9
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Symbolic execution is a systematic technique for checking programs, which has received a lot of research attention during the last decade. In principle, symbolic execution provides a powerful analysis for bug finding. In practice however, the technique remains computationally expensive and hard to scale. This paper introduces SynergiSE, a novel synergistic approach to improving symbolic execution by tackling a key bottleneck to its wider adoption: costly and incomplete constraint solving. To mitigate the cost, SynergiSE introduces a succinct encoding of constraint solving results, thereby enabling symbolic execution to be distributed among different workers while sharing and reusing constraint solving results among them without having to communicate databases of constraint solving results. To mitigate the incompleteness, SynergiSE introduces an integration of complementary approaches for testing, e.g., search-based test generation, with symbolic execution, thereby enabling symbolic execution and other techniques to apply in tandem, say to create higher-quality tests. Experimental results using a suite of Java programs show that SynergiSE presents a promising approach for improving symbolic execution.
引用
收藏
页码:325 / 342
页数:18
相关论文
共 50 条
  • [41] Scaling Symbolic Execution using Ranged Analysis
    Siddiqui, Junaid Haroon
    Khurshid, Sarfraz
    ACM SIGPLAN NOTICES, 2012, 47 (10) : 523 - 535
  • [42] Differential Fault Analysis Using Symbolic Execution
    van Woudenberg, Jasper
    Breunesse, Cees-Bart
    Velegalati, Rajesh
    Yalla, Panasayya
    Gonzalez, Sergio
    PROCEEDINGS OF THE 7TH SOFTWARE SECURITY, PROTECTION, AND REVERSE ENGINEERING WORKSHOP 2017 (SSPREW), 2017,
  • [43] AUTOMATED REGRESSION TESTING USING SYMBOLIC EXECUTION
    Barisas, Dominykas
    Milasius, Tomas
    Bareisa, Eduardas
    INFORMATION TECHNOLOGIES' 2011, 2011, : 117 - 124
  • [44] Complexity vulnerability analysis using symbolic execution
    Luckow, Kasper
    Kersten, Rody
    Pasareanu, Corina
    SOFTWARE TESTING VERIFICATION & RELIABILITY, 2020, 30 (7-8):
  • [45] Automated Regression Testing using Symbolic Execution
    Barisas, D.
    Milasius, T.
    Bareisa, E.
    ELEKTRONIKA IR ELEKTROTECHNIKA, 2011, (06) : 101 - 105
  • [46] FORMAL PROGRAM VERIFICATION USING SYMBOLIC EXECUTION
    DANNENBERG, RB
    ERNST, GW
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1982, 8 (01) : 43 - 52
  • [47] State of the art: Dynamic symbolic execution for automated test generation
    Chen, Ting
    Zhang, Xiao-song
    Guo, Shi-ze
    Li, Hong-yuan
    Wu, Yue
    FUTURE GENERATION COMPUTER SYSTEMS-THE INTERNATIONAL JOURNAL OF ESCIENCE, 2013, 29 (07): : 1758 - 1773
  • [48] Path Reduction of Multiple Test Points in Dynamic Symbolic Execution
    Lu, Jiawen
    Cai, Lizhi
    Zhang, Yang
    2017 16TH IEEE/ACIS INTERNATIONAL CONFERENCE ON COMPUTER AND INFORMATION SCIENCE (ICIS 2017), 2017, : 857 - 863
  • [49] Predicting Bugs using Symbolic Execution Graph
    Horvath, Gabor
    Pataki, Norbert
    INTERNATIONAL CONFERENCE ON NUMERICAL ANALYSIS AND APPLIED MATHEMATICS (ICNAAM-2018), 2019, 2116
  • [50] Scaling symbolic execution using staged analysis
    Siddiqui, Junaid Haroon
    Khurshid, Sarfraz
    INNOVATIONS IN SYSTEMS AND SOFTWARE ENGINEERING, 2013, 9 (02) : 119 - 131