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 条
  • [31] Automatic Test Generation for C and C plus plus Programs, Using Symbolic Execution
    Yoshida, Hiroaki
    Li, Guodong
    Kamiya, Takuki
    Ghosh, Indradeep
    Rajan, Sreeranga
    Tokumoto, Susumu
    Munakata, Kazuki
    Uehara, Tadahiro
    IEEE SOFTWARE, 2017, 34 (05) : 30 - 37
  • [32] Automatic Test Pattern Generation for Virtual Hardware Model using Constrained Symbolic Execution
    Mohamed, Nahla
    Safar, Mona
    Wahba, Ayman
    Salem, Ashraf
    2015 10TH INTERNATIONAL DESIGN & TEST SYMPOSIUM (IDT), 2015, : 149 - 150
  • [33] ATGen: automatic test data generation using constraint logic programming and symbolic execution
    Meudec, C
    SOFTWARE TESTING VERIFICATION & RELIABILITY, 2001, 11 (02): : 81 - 96
  • [34] Unit Test Data Generation for C Using Rule-Directed Symbolic Execution
    Ming-Zhe Zhang
    Yun-Zhan Gong
    Ya-Wen Wang
    Da-Hai Jin
    Journal of Computer Science and Technology, 2019, 34 : 670 - 689
  • [35] Improving the Accuracy of Static Defect Analysis Based on Symbolic Execution
    Wang M.-L.
    Zhang Y.-N.
    Li M.-Y.
    Shao S.
    Liu S.-R.
    Beijing Ligong Daxue Xuebao/Transaction of Beijing Institute of Technology, 2020, 40 (04): : 382 - 385and395
  • [36] Dynamic symbolic execution approach based on tabu search
    Cai, Jun
    Zou, Peng
    Ma, Jinxin
    He, Jun
    Beijing Hangkong Hangtian Daxue Xuebao/Journal of Beijing University of Aeronautics and Astronautics, 2015, 41 (12): : 2348 - 2355
  • [37] Automated Test Generation on Path-based Symbolic Execution
    Min, Zhang
    Min, Fu
    2014 5TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING AND SERVICE SCIENCE (ICSESS), 2014, : 845 - 848
  • [38] Symbolic Execution with Test Cases Generated by Large Language Models
    Xu, Jiahe
    Xu, Jingwei
    Chen, Taolue
    Ma, Xiaoxing
    2024 IEEE 24TH INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY, RELIABILITY AND SECURITY, QRS, 2024, : 228 - 237
  • [39] Test Case Selection based on Path Condtions of Symbolic Execution
    Munakata, Kazuki
    Fujiwara, Shoichiro
    Tokumoto, Susumu
    Uehara, Tadahiro
    2012 19TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC), VOL 1, 2012, : 318 - 321
  • [40] Test Generation via Dynamic Symbolic Execution for Mutation Testing
    Zhang, Lingming
    Xie, Tao
    Zhang, Lu
    Tillmann, Nikolai
    de Halleux, Jonathan
    Mei, Hong
    2010 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, 2010,