Concolic testing for functional languages

被引:10
|
作者
Giantsios, Aggelos [1 ]
Papaspyrou, Nikolaos [1 ]
Sagonas, Konstantinos [1 ,2 ]
机构
[1] Natl Tech Univ Athens, Sch Elect & Comp Engn, Athens, Greece
[2] Uppsala Univ, Dept Informat Technol, Uppsala, Sweden
关键词
Concolic testing; Symbolic execution; Pattern matching; Erlang; EXECUTION;
D O I
10.1016/j.scico.2017.04.008
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Concolic testing is a software testing technique that simultaneously combines concrete execution of a program (given specific input, along specific paths) with symbolic execution (generating new test inputs that explore other paths, which gives better path coverage than random test case generation). So far, concolic testing has been applied, mainly at the level of bytecode or assembly code, to programs written in imperative languages that manipulate primitive data types such as integers and arrays. In this article, we demonstrate its application to a functional programming language core, the functional subset of Core Erlang, that supports pattern matching, structured recursive data types such as lists, recursion and higher-order functions. We present CutEr, a tool implementing this testing technique, and describe its architecture, the challenges that it needs to address, its current limitations, and report some experiences from its use. (C) 2017 Elsevier B.V. All rights reserved.
引用
收藏
页码:109 / 134
页数:26
相关论文
共 50 条
  • [21] Concolic Testing for Deep Neural Networks
    Sun, Youcheng
    Wu, Min
    Ruan, Wenjie
    Huang, Xiaowei
    Kwiatkowska, Marta
    Kroening, Daniel
    [J]. PROCEEDINGS OF THE 2018 33RD IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMTED SOFTWARE ENGINEERING (ASE' 18), 2018, : 109 - 119
  • [22] Concolic testing based on patch comparisons
    Wang, Xin
    Guo, Tao
    Dong, Guowei
    Shao, Shuai
    Xin, Wei
    [J]. Qinghua Daxue Xuebao/Journal of Tsinghua University, 2013, 53 (12): : 1737 - 1742
  • [23] Enhancing Test Cases generated by Concolic Testing
    Dutta, Arpita
    Kumar, Shubham
    Godboley, Sangharatna
    [J]. PROCEEDINGS OF THE 12TH INNOVATIONS ON SOFTWARE ENGINEERING CONFERENCE (ISEC), 2019,
  • [24] Concolic Testing of Front-end JavaScript
    Li, Zhe
    Xie, Fei
    [J]. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2023, 13991 LNCS : 67 - 87
  • [25] In-Situ Concolic Testing of Java']JavaScript
    Li, Zhe
    Xie, Fei
    [J]. 2023 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION AND REENGINEERING, SANER, 2023, : 236 - 247
  • [26] LEGION: Best-First Concolic Testing
    Liu, Dongge
    Ernst, Gidon
    Murray, Toby
    Rubinstein, Benjamin I. P.
    [J]. 2020 35TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE 2020), 2020, : 54 - 65
  • [27] A Case Study of Concolic Testing Tools and Their Limitations
    Qu, Xiao
    Robinson, Brian
    [J]. 2011 FIFTH INTERNATIONAL SYMPOSIUM ON EMPIRICAL SOFTWARE ENGINEERING AND MEASUREMENT (ESEM 2011), 2011, : 117 - 126
  • [28] Structural Concolic Testing for Sequential Function Chart
    Simon, Hendrik
    Triefenbach, Lucas
    Kowalewski, Stefan
    [J]. IFAC PAPERSONLINE, 2018, 51 (07): : 422 - 427
  • [29] Concolic Testing with Adaptively Changing Search Heuristics
    Cha, Sooyoung
    Oh, Hakjoo
    [J]. 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, : 235 - 245
  • [30] Testing concolic execution through consistency checks☆
    Coppa, Emilio
    Izzillo, Alessio
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2024, 211