Automated Test Generation For Smart Contracts via On-Chain Test Case Augmentation and Migration
Jiashuo Zhang, Jiachi Chen, John Grundy, Jianbo Gao, Yanlin Wang, Ting Chen, Zhi Guan, Zhong Chen
Abstract
Pre-deployment testing has become essential to ensure the functional correctness of smart contracts. However, since smart contracts are stateful programs integrating many different functionalities, manually writing test cases to cover all potential usages requires significant effort from developers, leading to insufficient testing and increasing risks in practice. Although several testing techniques for smart contracts have been proposed, they primarily focus on detecting common low-level vulnerabilities such as re-entrancy, rather than generating expressive and function-relevant test cases that can reduce manual testing efforts. To bridge the gap, we propose SOLMIGRATOR, an automated technique designed to generate expressive and representative test cases for smart contracts. To our knowledge, SOLMIGRATOR is the first migration-based test generation technique for smart contracts, which extracts test cases from real-world usages of on-chain contracts and migrates them to test newly developed smart contracts with similar functionalities. Given a target smart contract to be tested and an on-chain similar source smart contract, SOLMIGRATOR first transforms the on-chain usage of the source contract into off-chain executable test cases based on on-chain transaction replay and dependency analysis. It then employs fine-grained static analysis to migrate the augmented test cases from the source to the target smart contract. We built a prototype of SOLMIGRATOR and have evaluated it on real-world smart contracts within the two most popular categories, ERC20 and ERC721. Our evaluation results demonstrate that SOLMIGRATOR effectively extracts test cases from existing on-chain smart contracts and accurately migrates them across different smart contracts, achieving an average precision of 96.3% and accuracy of 93.6%. Furthermore, the * Corresponding authors results indicate that these migrated test cases effectively cover common key functionalities of the target smart contracts. This provides promising evidence that real-world usages of existing smart contracts can be transformed into effective test cases for other newly developed smart contracts.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext e1138357-8e88-461f-a7f2-21b281bd3629Cited by top-tier papers1
Ask how each one uses itBuilds on12
- sFuzz: an efficient adaptive fuzzer for solidity smart contractsTai D. Nguyen, Long H. Pham, Jun Sun, Yun Lin et al.ICSE 2020 · 260 citations
- SMARTIAN: Enhancing Smart Contract Fuzzing with Static and Dynamic Data-Flow AnalysesJaeseung Choi, Doyeon Kim, Soomin Kim, Gustavo Grieco et al.ASE 2021 · 164 citations
- TokenScope: Automatically Detecting Inconsistent Behaviors of Cryptocurrency Tokens in EthereumTing Chen, Yufei Zhang, Zihao Li, Xiapu Luo et al.CCS 2019 · 140 citations
- Demystifying Exploitable Bugs in Smart ContractsZhuo Zhang, Brian Zhang, Wen Xu, Zhiqiang LinICSE 2023 · 80 citations
- ItyFuzz: Snapshot-Based Fuzzer for Smart ContractChaofan Shou, Shangyin Tan, Koushik SenISSTA 2023 · 76 citations
Related papers
- Learning from the Past: Real-World Exploit Migration for Smart Contract PoC GenerationKairan Sun, Zhengzi Xu, Kaixuan Li, Lyuye Zhang et al.ASE 2025 · 3 citations
- SmarTrim: Symbolic Execution for Smart Contracts Powered by Redundant Transaction-Sequence PruningHyegeun Song, Jiseong Han, Sunbeom SoFSE 2026 · 1 citation
- DepFuzz: Efficient Smart Contract Fuzzing with Function Dependence GuidanceChenyang Ma, Wei Song, Jeff HuangOOPSLA 2025 · 3 citations
- SmartShot: Hunt Hidden Vulnerabilities in Smart Contracts using Mutable SnapshotsRuichao Liang, Jing Chen, Ruochen Cao, Kun He et al.FSE 2025 · 2 citations
- Targeted greybox fuzzing with static lookahead analysisValentin Wüstholz, Maria ChristakisICSE 2020 · 14 citations
