ETHPrague 2024

Beyond Coverage: Mutation Testing
06-02, 16:00–16:25 (Europe/Prague), Leaf Stage

Smart contract tests are usually evaluated using coverage, but this metric doesn't always tell the full story. How can you ensure the quality of your tests? Mutation testing allows you to assess their efficacy using modified smart contracts.


Code coverage has a long history of being used as the metric for evaluating the quality of tests, but it's not always an appropriate metric. Mutation testing, by running tests against modified code, can do a better job at identifying faults. How can smart contract developers leverage the power of mutation to improve their tests? What tools can they use to automate this process?

I joined Nethermind as an intern in 2022, with a background in computer science and self-taught Solidity. During this internship I worked on DeFi protocol development and co-authored EIP-5133. Since then I work as a Smart Contract Engineer at Nethermind, continuing with DeFi protocols, doing research, and writing articles. My current focus revolves around the development of a RWA tokenization platform.