Robustness Testing of Software Verifiers

被引:0
|
作者
Dyck, Florian [1 ]
Richter, Cedric [1 ]
Wehrheim, Heike [1 ]
机构
[1] Carl von Ossietzky Univ Oldenburg, Dept Comp Sci, Oldenburg, Germany
关键词
Software Verification; Robustness; Testing; COMPILER BUGS; GENERATION;
D O I
10.1007/978-3-031-47115-5_5
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Software verification tools fully automatically prove the correctness of verification tasks (i.e., programs with correctness specifications). With their increasing application on safety-critical software, the quality of such tools becomes of prime importance. This quality is typically assessed via experimental evaluation. In this paper, we present a novel approach for robustness testing of software verifiers. We consider tools to be robust if their output (for a given input task) does not change under small perturbations of the input. The core idea of our technique is to start with tasks of publicly available benchmarks and systematically apply small program transformations on them which preserve program semantics. As a consequence, the ground truth known from the benchmark (i.e., the correct outcome used as an oracle during testing) carries over to all of its perturbed versions. We experimentally evaluate robustness testing on three state-of-the-art software verifiers. To this end, we perturbate 778 tasks from the annual Competition on Software Verification via 8 transformations. Our evaluation shows that all three verifiers are non-robust, however, to different extents.
引用
收藏
页码:66 / 84
页数:19
相关论文
共 50 条
  • [21] InRob: An approach for testing interoperability and robustness of real-time embedded software
    Mattiello-Francisco, Fatima
    Martins, Eliane
    Cavalli, Ana Rosa
    Yano, Edgar Toshiro
    JOURNAL OF SYSTEMS AND SOFTWARE, 2012, 85 (01) : 3 - 15
  • [22] Automated software robustness testing - Static and adaptive test case design methods
    Dix, M
    Hofmann, HD
    PROCEEDINGS OF THE 28TH EUROMICRO CONFERENCE, 2002, : 62 - 66
  • [23] Using memetic algorithm for robustness testing of contract-based software models
    Anvar Bahrampour
    Vahid Rafe
    Artificial Intelligence Review, 2021, 54 : 877 - 915
  • [24] Using memetic algorithm for robustness testing of contract-based software models
    Bahrampour, Anvar
    Rafe, Vahid
    ARTIFICIAL INTELLIGENCE REVIEW, 2021, 54 (02) : 877 - 915
  • [25] Software mutational robustness
    Schulte, Eric
    Fry, Zachary P.
    Fast, Ethan
    Weimer, Westley
    Forrest, Stephanie
    GENETIC PROGRAMMING AND EVOLVABLE MACHINES, 2014, 15 (03) : 281 - 312
  • [26] Software mutational robustness
    Eric Schulte
    Zachary P. Fry
    Ethan Fast
    Westley Weimer
    Stephanie Forrest
    Genetic Programming and Evolvable Machines, 2014, 15 : 281 - 312
  • [27] The Verifiers
    Farrell, Beth
    LIBRARY JOURNAL, 2022, 147 (06) : 77 - 77
  • [28] HEIST: A Hardware Signal Fault Injection Methodology Enabling Feasible Software Robustness Testing
    Skriver, Martin
    Stengaard, Anders
    Schultz, Ulrik Pagh
    2021 24TH INTERNATIONAL SYMPOSIUM ON DESIGN AND DIAGNOSTICS OF ELECTRONIC CIRCUITS & SYSTEMS (DDECS), 2021, : 123 - 126
  • [29] Testing the Input Timing Robustness of Real-time Control Software for Autonomous Systems
    Powell, David
    Arlat, Jean
    Chu, Hoang Nam
    Ingrand, Felix
    Killijian, Marc-Olivier
    2012 NINTH EUROPEAN DEPENDABLE COMPUTING CONFERENCE (EDCC 2012), 2012, : 73 - 83
  • [30] Combinatorial Validation Testing of Java']Java Card Byte Code Verifiers
    Calvagna, Andrea
    Tramontana, Emiliano
    2013 IEEE 22ND INTERNATIONAL WORKSHOP ON ENABLING TECHNOLOGIES: INFRASTRUCTURE FOR COLLABORATIVE ENTERPRISES (WETICE), 2013, : 347 - 352