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 条
  • [41] Wrapping windows NT software for robustness
    Ghosh, AK
    Schmid, M
    Hill, F
    TWENTY-NINTH ANNUAL INTERNATIONAL SYMPOSIUM ON FAULT-TOLERANT COMPUTING, DIGEST OF PAPERS, 1999, : 344 - 347
  • [42] A Systematic Review on Software Robustness Assessment
    Laranjeiro, Nuno
    Agnelo, Joao
    Bernardino, Jorge
    ACM COMPUTING SURVEYS, 2021, 54 (04)
  • [43] A Behavioral Notion of Robustness for Software Systems
    Zhang, Changjian
    Garlan, David
    Kang, Eunsuk
    PROCEEDINGS OF THE 28TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (ESEC/FSE '20), 2020, : 1 - 12
  • [44] RELIABILITY AND ROBUSTNESS OF ENGINEERING SOFTWARE CONFERENCE
    NEWMAN, LR
    KYBERNETES, 1988, 17 (01) : 73 - 75
  • [45] Measuring software dependability by robustness benchmarking
    Mukherjee, A
    Siewiorek, DP
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1997, 23 (06) : 366 - 378
  • [46] Improving software robustness with dependability cases
    Maxion, RA
    Olszewski, RT
    TWENTY-EIGHTH ANNUAL INTERNATIONAL SYMPOSIUM ON FAULT-TOLERANT COMPUTING, DIGEST PAPERS, 1998, : 346 - 355
  • [47] Wrapping windows NT software for robustness
    Ghosh, Anup K.
    Schmid, Matt
    Hill, Frank
    Proceedings - Annual International Conference on Fault-Tolerant Computing, 1999, : 344 - 347
  • [48] Consensus software - Robustness and social good
    Huhns, MN
    IEEE INTERNET COMPUTING, 2003, 7 (03) : 91 - 93
  • [49] Security and Robustness by Protocol Testing
    Fu, Yulong
    Kone, Ousmane
    IEEE SYSTEMS JOURNAL, 2014, 8 (03): : 699 - 707
  • [50] Testing the Robustness of AutoML Systems
    Halvari, Tuomas
    Nurminen, Jukka K.
    Mikkonen, Tommi
    ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2020, (319): : 103 - 116