Practical Mutation Testing for Smart Contracts

Joran J. Honig*, Maarten H. Everts, Marieke Huisman

*Corresponding author for this work

    Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

    18 Citations (Scopus)
    64 Downloads (Pure)


    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.
    Original languageEnglish
    Title of host publicationData Privacy Management, Cryptocurrencies and Blockchain Technology
    Subtitle of host publicationESORICS 2019 International Workshops, DPM 2019 and CBT 2019, Luxembourg, September 26-27, 2019, Proceedings
    EditorsCristina Pérez-Solà, Guillermo Navarro-Arribas, Alex Biryukov, Joaquín García-Alfaro
    Place of PublicationCham
    Number of pages15
    ISBN (Electronic)978-3-030-31500-9
    ISBN (Print)978-3-030-31499-6
    Publication statusPublished - 2019
    Event3rd International Workshop on Cryptocurrencies and Blockchain Technology, CBT 2019 - Luxembourg, Luxembourg
    Duration: 26 Sept 201927 Sept 2019
    Conference number: 3

    Publication series

    NameLecture Notes in Computer Science
    ISSN (Print)0302-9743
    ISSN (Electronic)1611-3349


    Conference3rd International Workshop on Cryptocurrencies and Blockchain Technology, CBT 2019
    Abbreviated titleCBT


    • Mutation testing
    • Smart contract
    • Solidity


    Dive into the research topics of 'Practical Mutation Testing for Smart Contracts'. Together they form a unique fingerprint.

    Cite this