SpecFuzzer: A Tool for Inferring Class Specifications via Grammar-based Fuzzing

被引:0
|
作者
Molina, Facundo [1 ]
d'Amorim, Marcelo [2 ]
Aguirre, Nazareno [3 ,4 ]
机构
[1] IMDEA Software Inst, Madrid, Spain
[2] North Carolina State Univ, Raleigh, NC 27695 USA
[3] Univ Rio Cuarto, Rio Cuarto, Argentina
[4] Consejo Nacl Invest Cient & Tecn, Rio Cuarto, Argentina
关键词
Oracle Problem; Specification Inference; Grammar-based Fuzzing;
D O I
10.1109/ASE56229.2023.00024
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
In object-oriented design, class specifications are primarily used to express properties describing the intended behavior of the class methods and constraints on class' objects. Although the presence of these specifications is important for various software engineering tasks such as test generation, bug finding and automated debugging, developers rarely write them. In this tool demo we present the details of SPECFUZZER, a tool that aims at alleviating the problem of writing class specifications by using a combination of grammar-based fuzzing, dynamic invariant detection and mutation analysis to automatically infer specifications for Java classes. Given a class under analysis, SPECFUZZER uses (i) a generator of candidate assertions derived from a grammar automatically extracted from the class; (ii) a dynamic invariant detector -Daikon- in order to discard the assertions invalidated by a test suite; and (iii) a mutation-based mechanism to cluster and rank assertions, so that similar constraints are grouped together and the stronger assertions are prioritized. The tool is available on GitHub at https://github.com/facumolina/specfuzzer, and demo video can be found on YouTube: https://youtu.be/IfakNCbzOUg.
引用
收藏
页码:2094 / 2097
页数:4
相关论文
共 32 条
  • [1] SpecFuzzer: A Tool for Inferring Class Specifications via Grammar-Based Fuzzing
    Molina, Facundo
    D'Amorim, Marcelo
    Aguirre, Nazareno
    [J]. Proceedings - 2023 38th IEEE/ACM International Conference on Automated Software Engineering, ASE 2023, 2023, : 2094 - 2097
  • [2] Leveraging Textual Specifications for Grammar-Based Fuzzing of Network Protocols
    Jero, Samuel
    Pacheco, Maria Leonor
    Goldwasser, Dan
    Nita-Rotaru, Cristina
    [J]. THIRTY-THIRD AAAI CONFERENCE ON ARTIFICIAL INTELLIGENCE / THIRTY-FIRST INNOVATIVE APPLICATIONS OF ARTIFICIAL INTELLIGENCE CONFERENCE / NINTH AAAI SYMPOSIUM ON EDUCATIONAL ADVANCES IN ARTIFICIAL INTELLIGENCE, 2019, : 9478 - 9483
  • [3] Grammar-based Fuzzing
    Sargsyan, Sevak
    Kurmangaleev, Shamil
    Mehrabyan, Matevos
    Mishechkin, Maksim
    Ghukasyan, Tsolak
    Asryan, Sergey
    [J]. 2018 IVANNIKOV MEMORIAL WORKSHOP (IVMEM 2018), 2018, : 32 - 35
  • [4] Grammar-based whitebox fuzzing
    Microsoft Research, Redmond, WA, United States
    不详
    不详
    [J]. ACM SIGPLAN Not., 6 (206-215):
  • [5] Grammar-based whitebox fuzzing
    Godefroid, Patrice
    Kiezun, Adam
    Levin, Michael Y.
    [J]. ACM SIGPLAN NOTICES, 2008, 43 (06) : 206 - 215
  • [6] Grammar-based Whitebox Fuzzing
    Godefroid, Patrice
    Kiezun, Adam
    Levin, Michael Y.
    [J]. PLDI'08: PROCEEDINGS OF THE 2008 SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN & IMPLEMENTATION, 2008, : 206 - +
  • [7] Bottleneck Analysis via Grammar-based Performance Fuzzing
    Koroglu, Yavuz
    Wotawa, Franz
    [J]. 2023 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION WORKSHOPS, ICSTW, 2023, : 180 - 185
  • [8] Grammar-based Fuzzing Tool Using Markov Chain Model to Generate New Fuzzing Inputs
    Al Salem, Hamad
    Song, Jia
    [J]. 2021 INTERNATIONAL CONFERENCE ON COMPUTATIONAL SCIENCE AND COMPUTATIONAL INTELLIGENCE (CSCI 2021), 2021, : 1924 - 1930
  • [9] Grammar-based Adaptive Fuzzing: Evaluation on SCADA Modbus Protocol
    Yoo, Hyunguk
    Shon, Taeshik
    [J]. 2016 IEEE INTERNATIONAL CONFERENCE ON SMART GRID COMMUNICATIONS (SMARTGRIDCOMM), 2016,
  • [10] TREELINE and SLACKLINE: Grammar-Based Performance Fuzzing on Coffee Break
    Alsaeed, Ziyad
    Young, Michal
    [J]. PROCEEDINGS OF THE 32ND ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, ISSTA 2023, 2023, : 1507 - 1510