Affiliation:
1. UCASE Software Engineering Research Group, Department of Computer Science and Engineering University of Cadiz Cádiz Spain
2. School of Engineering University of Cadiz Cádiz Spain
Abstract
AbstractSmart contracts (SC) are programs embodying certain business logic stored on a blockchain network like Ethereum. The execution of transactions on SC has a cost, measured in gas units, that depends on the low‐level operations performed. Therefore, a poor choice of high‐level language constructs could lead to overcharging users for their transactions. Thus, a testing process focused on possible deviations of the gas used in diverse scenarios could provide substantial global savings. This paper presents a gas‐centered mutation testing approach for taking care of the gas consumed by Solidity SCs. This approach can be useful to improve the test quality to detect gas‐related problems, reason about performance issues that only manifest in certain situations, and identify alternative more optimal implementations. We define and implement several mutation operators specifically designed to perturb gas consumption while preserving contract semantics in general. Our experiments using several real‐world SCs show the feasibility of the technique, with some mutants reproducing meaningful differences in the consumption and exposing some gas limits not tight enough in historic transactions. Therefore, our approach is shown to be a good ally to prevent the appearance of gas‐related issues and lays the groundwork for researchers seeking to improve performance testing practices.
Funder
European Regional Development Fund
Reference54 articles.
1. YagaDJ MellPM RobyN ScarfoneK.Blockchain technology overview.NIST Pubs. 8202 Gaithersburg MD NIST;2018.
2. Rosa‐BilbaoJ Boubeta‐PuigJ.RectorDApp: decentralized application for managing university rector elections. In: 2021 IEEE International Conference on Service‐Oriented System Engineering (SOSE) SOSE '21.IEEE;2021;Oxford United Kingdom:161‐165.
3. Exploring the use of blockchain in resource‐constrained fog computing environments;Sánchez‐de la Rosa M;Softw: Practice Exper,2023
4. Towards roadmap to implement blockchain in healthcare systems based on a maturity model;Akbar MA;J Softw: Evol Process,2022
5. EDALoCo: enhancing the accessibility of blockchains through a low‐code approach to the development of event‐driven applications for smart contract management;Rosa‐Bilbao J;Comput Standards Interfaces,2023