Practical Mutation Testing for Smart Contracts

被引:16
|
作者
Honig, Joran J. [1 ,3 ]
Everts, Maarten H. [1 ,2 ]
Huisman, Marieke [1 ]
机构
[1] Univ Twente, Enschede, Netherlands
[2] TNO, The Hague, Netherlands
[3] ConsenSys, New York, NY 11206 USA
关键词
Mutation testing; Smart contract; Solidity;
D O I
10.1007/978-3-030-31500-9_19
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Solidity smart contracts operate in a hostile environment, which introduces the need for the adequate application of testing techniques to ensure mitigation of the risk of a security incident. Mutation testing is one such technique. It allows for the evaluation of the efficiency of a test suite in detecting faults in a program, allowing developers to both assess and improve the quality of their test suites. In this paper, we propose a mutation testing framework and implement a prototype implementation called Vertigo that targets Solidity contracts for the Ethereum blockchain. We also show that mutation testing can be used to assess the test suites of real-world projects.
引用
收藏
页码:289 / 303
页数:15
相关论文
共 50 条
  • [1] Mutation Testing of Smart Contracts at Scale
    Hartel, Pieter
    Schumi, Richard
    [J]. TESTS AND PROOFS (TAP 2020), 2020, 12165 : 23 - 42
  • [2] Deviant: A Mutation Testing Tool for Solidity Smart Contracts
    Chapman, Patrick
    Xu, Dianxiang
    Deng, Lin
    Xiong, Yin
    [J]. 2019 IEEE INTERNATIONAL CONFERENCE ON BLOCKCHAIN (BLOCKCHAIN 2019), 2019, : 319 - 324
  • [3] Mutation Testing for Integer Overflow in Ethereum Smart Contracts
    Jinlei Sun
    Song Huang
    Changyou Zheng
    Tingyong Wang
    Cheng Zong
    Zhanwei Hui
    [J]. Tsinghua Science and Technology, 2022, 27 (01) : 27 - 40
  • [4] RegularMutator: A Mutation Testing Tool for Solidity Smart Contracts
    Ivanova, Y.
    Khritankov, A.
    [J]. 9TH INTERNATIONAL YOUNG SCIENTISTS CONFERENCE IN COMPUTATIONAL SCIENCE, YSC2020, 2020, 178 : 75 - 83
  • [5] SuMo: A Mutation Testing Strategy for Solidity Smart Contracts
    Barboni, Morena
    Morichetta, Andrea
    Polini, Andrea
    [J]. 2021 IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATION OF SOFTWARE TEST (AST 2021), 2021, : 50 - 59
  • [6] Mutation Testing for Integer Overflow in Ethereum Smart Contracts
    Sun, Jinlei
    Huang, Song
    Zheng, Changyou
    Wang, Tingyong
    Zong, Cheng
    Hui, Zhanwei
    [J]. TSINGHUA SCIENCE AND TECHNOLOGY, 2022, 27 (01) : 27 - 40
  • [7] ReSuMo: Regression Mutation Testing for Solidity Smart Contracts
    Barboni, Morena
    Casoni, Francesco
    Morichetta, Andrea
    Polini, Andrea
    [J]. QUALITY OF INFORMATION AND COMMUNICATIONS TECHNOLOGY, QUATIC 2022, 2022, 1621 : 61 - 76
  • [8] SMARTGIFT: Learning to Generate Practical Inputs for Testing Smart Contracts
    Zhou, Teng
    Liu, Kui
    Li, Li
    Liu, Zhe
    Klein, Jacques
    Bissyande, Tegawende F.
    [J]. 2021 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2021), 2021, : 23 - 34
  • [9] Gas-centered mutation testing of Ethereum Smart Contracts
    Delgado-Perez, Pedro
    Melendez-Lapi, Ignacio
    Boubeta-Puig, Juan
    [J]. JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2024, 36 (09)
  • [10] ReSuMo: a regression strategy and tool for mutation testing of solidity smart contracts
    Barboni, Morena
    Morichetta, Andrea
    Polini, Andrea
    Casoni, Francesco
    [J]. SOFTWARE QUALITY JOURNAL, 2024, 32 (01) : 225 - 253