{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,9,16]],"date-time":"2025-09-16T18:46:50Z","timestamp":1758048410581,"version":"3.44.0"},"reference-count":106,"publisher":"Springer Science and Business Media LLC","issue":"5","license":[{"start":{"date-parts":[[2025,7,17]],"date-time":"2025-07-17T00:00:00Z","timestamp":1752710400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2025,7,17]],"date-time":"2025-07-17T00:00:00Z","timestamp":1752710400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2025,9]]},"DOI":"10.1007\/s10664-025-10685-3","type":"journal-article","created":{"date-parts":[[2025,7,17]],"date-time":"2025-07-17T02:40:03Z","timestamp":1752720003000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["On state reverting in solidity smart contracts: Developer practices, fault categorization, and tool evaluation"],"prefix":"10.1007","volume":"30","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-0922-4460","authenticated-orcid":false,"given":"Lu","family":"Liu","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Lili","family":"Wei","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Wuqi","family":"Zhang","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Shuqing","family":"Li","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Yifan","family":"Zhou","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Yepang","family":"Liu","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Shing-Chi","family":"Cheung","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Michael R.","family":"Lyu","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2025,7,17]]},"reference":[{"key":"10685_CR1","unstructured":"Afl fuzzer (2013) https:\/\/lcamtuf.coredump.cx\/afl\/technical_details.txt"},{"key":"10685_CR2","unstructured":"An example of fixing access control faults by adding a blacklist address check. (2023) https:\/\/github.com\/thundercore\/referral-solidity\/commit\/a44f0e7728974435b63c8b8ef9e323243f006884"},{"key":"10685_CR3","unstructured":"An example of fixing others faults by adding a timestamp check. (2018) https:\/\/github.com\/blockchain-IoT\/ Motoro\/commit\/db5e43f30b1f51d47f193ab32fb9f9da2e4141c9"},{"key":"10685_CR4","unstructured":"An temporal property violation example (2024) https:\/\/github.com\/delvtech\/council\/commit\/861e7600bcd5fe3cacca4f84e9f25c72f9c21075"},{"key":"10685_CR5","doi-asserted-by":"publisher","unstructured":"Atzei N, Bartoletti M, Cimoli T (2017) A survey of attacks on ethereum smart contracts (sok). In Matteo Maffei and Mark Ryan, editors, Principles of Security and Trust - 6th International Conference, POST 2017, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2017, Uppsala, Sweden, April 22-29, 2017, Proceedings, volume 10204 of Lecture Notes in Computer Science, Springer, pages 164\u2013186. https:\/\/doi.org\/10.1007\/978-3-662-54455-6_8","DOI":"10.1007\/978-3-662-54455-6_8"},{"issue":"4","key":"10685_CR6","doi-asserted-by":"publisher","first-page":"571","DOI":"10.1016\/j.jss.2006.07.009","volume":"80","author":"P Brereton","year":"2007","unstructured":"Brereton P, Kitchenham BA, Budgen D, Turner M, Khalil M (2007) Lessons from applying the systematic literature review process within the software engineering domain. J Syst Softw 80(4):571\u2013583. https:\/\/doi.org\/10.1016\/j.jss.2006.07.009","journal-title":"J Syst Softw"},{"key":"10685_CR7","doi-asserted-by":"publisher","unstructured":"Chaliasos S, Charalambous MA, Zhou L, Galanopoulou R, Gervais A, Mitropoulos D, Livshits B (2024) Smart contract and defi security tools: Do they meet the needs of practitioners? In: Proceedings of the 46th IEEE\/ACM international conference on software engineering, ICSE 2024, Lisbon, Portugal, April 14-20, 2024, ACM, pages 60:1\u201360:13. https:\/\/doi.org\/10.1145\/3597503.3623302","DOI":"10.1145\/3597503.3623302"},{"key":"10685_CR8","doi-asserted-by":"crossref","unstructured":"Chaliasos S, Charalambous MA, Zhou L, Galanopoulou R, Gervais A, Mitropoulos D, Livshits B (2024) Smart contract and defi security: Insights from tool evaluations and practitioner surveys","DOI":"10.1145\/3597503.3623302"},{"key":"10685_CR9","unstructured":"Checks-effects-interactions pattern (2024) https:\/\/github.com\/fravoll\/solidity-patterns\/blob\/master\/docs\/checks_effects_interactions.md#checks-effects-interactions"},{"issue":"3","key":"10685_CR10","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/3391195","volume":"53","author":"H Chen","year":"2020","unstructured":"Chen H, Pendleton M, Njilla L, Xu S (2020) A survey on ethereum systems security: Vulnerabilities, attacks, and defenses. ACM Comput Surv (CSUR) 53(3):1\u201343","journal-title":"ACM Comput Surv (CSUR)"},{"issue":"1","key":"10685_CR11","doi-asserted-by":"publisher","first-page":"327","DOI":"10.1109\/TSE.2020.2989002","volume":"48","author":"J Chen","year":"2020","unstructured":"Chen J, Xia X, Lo D, Grundy J, Luo X, Chen T (2020) Defining smart contract defects on ethereum. IEEE Trans Softw Eng 48(1):327\u2013345","journal-title":"IEEE Trans Softw Eng"},{"issue":"2","key":"10685_CR12","first-page":"1","volume":"30","author":"Q Chen","year":"2021","unstructured":"Chen Q, Xia X, Hu H, Lo D, Li S (2021) Why my code summarization model does not work: Code comment improvement with category prediction. ACM Trans Softw Eng Methodol (TOSEM) 30(2):1\u201329","journal-title":"ACM Trans Softw Eng Methodol (TOSEM)"},{"key":"10685_CR13","doi-asserted-by":"crossref","unstructured":"Cheng Y, Yang H, Li Z, Tian L (2024) Characterizing, detecting, and correcting comment errors in smart contract functions. In: 2024 IEEE International conference on software services engineering (SSE), IEEE, pages 282\u2013292","DOI":"10.1109\/SSE62657.2024.00050"},{"key":"10685_CR14","doi-asserted-by":"crossref","unstructured":"Chen J, Shao Z, Yang S, Shen Y, Wang Y, Chen T, Shan Z, Zheng Z (2025) Numscout: Unveiling numerical defects in smart contracts using llm-pruning symbolic execution. IEEE Trans Softw Eng","DOI":"10.1109\/TSE.2025.3555622"},{"key":"10685_CR15","doi-asserted-by":"crossref","unstructured":"Chen W, Sun Z, Wang H, Luo X, Cai H, Wu L (2022) Wasai: uncovering vulnerabilities in wasm smart contracts. In: Proceedings of the 31st ACM SIGSOFT international symposium on software testing and analysis, pages 703\u2013715","DOI":"10.1145\/3533767.3534218"},{"key":"10685_CR16","doi-asserted-by":"crossref","unstructured":"Choi J, Kim D, Kim S, Grieco G, Groce A, Cha SK (2021) Smartian: Enhancing smart contract fuzzing with static and dynamic data-flow analyses. In: 2021 36th IEEE\/ACM international conference on automated software engineering (ASE), IEEE, pages 227\u2013239","DOI":"10.1109\/ASE51524.2021.9678888"},{"key":"10685_CR17","unstructured":"Code4rena (2024) https:\/\/code4rena.com"},{"key":"10685_CR18","unstructured":"Code4rena github repository (2024) https:\/\/github.com\/code-423n"},{"issue":"1","key":"10685_CR19","doi-asserted-by":"publisher","first-page":"37","DOI":"10.1177\/001316446002000104","volume":"20","author":"J Cohen","year":"1960","unstructured":"Cohen J (1960) A coefficient of agreement for nominal scales. Educ Psychol Measurement 20(1):37\u201346","journal-title":"Educ Psychol Measurement"},{"key":"10685_CR20","unstructured":"Customization and dynamic structuring of smart contracts in solidity (2023). https:\/\/medium.com\/@solidity101\/ customization-and-dynamic-structuring-of-smart-contracts-in-solidity-d429da7d386e"},{"key":"10685_CR21","unstructured":"Defi money market compound overpays millions in comp rewards in possible exploit (2021). https:\/\/www.coindesk.com\/tech\/2021\/09\/30\/defi-money-market-compound-overpays-15m-in-comp-rewards-in-possible-exploit\/"},{"key":"10685_CR22","unstructured":"Detection documentation of reentrancy vulnerabilities by slither (2023) https:\/\/github.com\/crytic\/slither\/wiki\/Detector-Documentation#reentrancy-vulnerabilities-3"},{"key":"10685_CR23","doi-asserted-by":"crossref","unstructured":"Di Angelo M, Salzer G (2019) A survey of tools for analyzing ethereum smart contracts. In: 2019 IEEE international conference on decentralized applications and infrastructures (DAPPCON), IEEE, pages 69\u201378","DOI":"10.1109\/DAPPCON.2019.00018"},{"key":"10685_CR24","doi-asserted-by":"publisher","unstructured":"Durieux T, Ferreira JF, Abreu R, Cruz P (2020) Empirical review of automated analysis tools on 47, 587 Ethereum smart contracts ICSE \u201920: 42nd International Conference on Software Engineering Seoul South Korea 27 June 19 July\u00a02020 Jo\u00e3o F. Ferreira and Rui Abreu and Pedro Cruz, Gregg Rothermel and Doo-Hwan Bae. pages 530\u2013541. ACM. https:\/\/doi.org\/10.1145\/3377811.3380364","DOI":"10.1145\/3377811.3380364"},{"key":"10685_CR25","unstructured":"Eea ethtrust security levels specification (2024) https:\/\/entethalliance.org\/specs\/ethtrust-sl\/v2\/"},{"key":"10685_CR26","unstructured":"Eos platform (2024) https:\/\/eos.com\/platform\/"},{"key":"10685_CR27","unstructured":"Eshghie M, \u00c5ryd V, Artho C, Monperrus M (2024) Solidiffy: Ast differencing for solidity smart contracts. arXiv:2411.07718"},{"key":"10685_CR28","unstructured":"Ethereum daily transactions chart (2024) https:\/\/etherscan.io\/chart\/tx"},{"key":"10685_CR29","unstructured":"Ethereum improvement proposal eip-140: Revert instruction (2024) https:\/\/eips.ethereum.org\/EIPS\/eip-140"},{"key":"10685_CR30","unstructured":"Ethereum launches (2015) https:\/\/blog.ethereum.org\/2015\/07\/30\/ethereum-launches"},{"key":"10685_CR31","unstructured":"Ethereum transactions (2024) https:\/\/ethereum.org\/en\/developers\/docs\/transactions\/"},{"key":"10685_CR32","unstructured":"Ethereum yellowpaper (2024) https:\/\/ethereum.github.io\/yellowpaper\/paper.pdf"},{"key":"10685_CR33","doi-asserted-by":"crossref","unstructured":"Feist J, Grieco G, Groce A (2019) Slither: a static analysis framework for smart contracts. In: 2019 IEEE\/ACM 2nd International workshop on emerging trends in software engineering for blockchain (WETSEB), IEEE, pages 8\u201315","DOI":"10.1109\/WETSEB.2019.00008"},{"key":"10685_CR34","doi-asserted-by":"crossref","unstructured":"Ferreira Torres C, Iannillo AK, Gervais A, State R (2021) The eye of horus: Spotting and analyzing attacks on ethereum smart contracts. In: International conference on financial cryptography and data security, Springer, pages 33\u201352","DOI":"10.1007\/978-3-662-64322-8_2"},{"key":"10685_CR35","unstructured":"Field of research code (2024) https:\/\/researchonline.jcu.edu.au\/view\/subjects\/subjects.html"},{"key":"10685_CR36","doi-asserted-by":"crossref","unstructured":"Ghaleb A, Pattabiraman K (2020) How effective are smart contract analysis tools? evaluating smart contract static analysis tools using bug injection. In: Proceedings of the 29th ACM SIGSOFT international symposium on software testing and analysis, pages 415\u2013427","DOI":"10.1145\/3395363.3397385"},{"key":"10685_CR37","doi-asserted-by":"crossref","unstructured":"Ghaleb A, Rubin J, Pattabiraman K (2022) etainter: detecting gas-related vulnerabilities in smart contracts. In: Proceedings of the 31st ACM SIGSOFT International symposium on software testing and analysis, pages 728\u2013739","DOI":"10.1145\/3533767.3534378"},{"key":"10685_CR38","doi-asserted-by":"publisher","unstructured":"Ghaleb A, Rubin J, Pattabiraman K (2023) Achecker: Statically detecting smart contract access control vulnerabilities. In: 45th IEEE\/ACM International conference on software engineering, ICSE 2023, Melbourne, Australia, May 14-20, 2023, IEEE, pages 945\u2013956. https:\/\/doi.org\/10.1109\/ICSE48619.2023.00087","DOI":"10.1109\/ICSE48619.2023.00087"},{"key":"10685_CR39","unstructured":"Github (2024) https:\/\/github.com\/"},{"key":"10685_CR40","unstructured":"Github rest api (2022) https:\/\/docs.github.com\/en\/rest?apiVersion=2022-11-28"},{"key":"10685_CR41","unstructured":"Google scholar searching engine (2024) https:\/\/scholar.google.com\/"},{"key":"10685_CR42","doi-asserted-by":"crossref","unstructured":"Grech N, Kong M, Jurisevic A, Brent L, Scholz B, Smaragdakis Y (2018) Madmax: Surviving out-of-gas conditions in ethereum smart contracts. Proceed ACM Program Lang 2(OOPSLA):1\u201327","DOI":"10.1145\/3276486"},{"key":"10685_CR43","doi-asserted-by":"crossref","unstructured":"Harty J, Zhang H, Wei L, Pascarella L, Aniche M, Shang W (2021) Logging practices with mobile analytics: An empirical study on firebase. arXiv:2104.02513","DOI":"10.1109\/MobileSoft52590.2021.00013"},{"key":"10685_CR44","unstructured":"Harz D, Knottenbelt W (2018) Towards safer smart contracts: A survey of languages and verification methods. arXiv:1809.09805"},{"key":"10685_CR45","doi-asserted-by":"crossref","unstructured":"Heged\u0171s, P (2018) Towards analyzing the complexity landscape of solidity based ethereum smart contracts. In: Proceedings of the 1st international workshop on emerging trends in software engineering for blockchain (pp 35\u201339)","DOI":"10.1145\/3194113.3194119"},{"key":"10685_CR46","unstructured":"He N, Zhang R, Wang H, Wu L, Luo X, Guo Y, Yu T, Jiang X (2021) $$\\{$$EOSAFE$$\\}$$: security analysis of $$\\{$$EOSIO$$\\}$$ smart contracts. In: 30th USENIX security symposium (USENIX Security 21), pages 1271\u20131288"},{"key":"10685_CR47","doi-asserted-by":"publisher","unstructured":"Hu X, Gao Z, Xia X, Lo D, Yang X (2021) Automating user notice generation for smart contract functions. In: 36th IEEE\/ACM International conference on automated software engineering, ASE 2021, Melbourne, Australia, November 15-19, 2021, IEEE, pages 5\u201317. https:\/\/doi.org\/10.1109\/ASE51524.2021.9678552","DOI":"10.1109\/ASE51524.2021.9678552"},{"key":"10685_CR48","unstructured":"Hyperledger fabric (2015) https:\/\/www.hyperledger.org\/use\/fabric"},{"key":"10685_CR49","doi-asserted-by":"crossref","unstructured":"Jiang B, Liu Y, Chan WK (2018) Contractfuzzer: Fuzzing smart contracts for vulnerability detection. In: Proceedings of the 33rd ACM\/IEEE international conference on automated software engineering, pages 259\u2013269","DOI":"10.1145\/3238147.3238177"},{"issue":"2\u20133","key":"10685_CR50","doi-asserted-by":"publisher","first-page":"435","DOI":"10.1016\/S0168-9002(99)00498-2","volume":"434","author":"T Junk","year":"1999","unstructured":"Junk T (1999) Confidence level computation for combining searches with small statistics. Nuclear Instruments and Methods in Physics Research Section A: Accelerators, Spectrometers, Detectors and Associated Equipment 434(2\u20133):435\u2013443","journal-title":"Nuclear Instruments and Methods in Physics Research Section A: Accelerators, Spectrometers, Detectors and Associated Equipment"},{"key":"10685_CR51","doi-asserted-by":"crossref","unstructured":"Liao Z, Hao S, Nan Y, Zheng Z (2023) Smartstate: Detecting state-reverting vulnerabilities in smart contracts via fine-grained state-dependency analysis. In: Proceedings of the 32nd ACM SIGSOFT International symposium on software testing and analysis, pages 980\u2013991","DOI":"10.1145\/3597926.3598111"},{"key":"10685_CR52","doi-asserted-by":"crossref","unstructured":"Li Z, Li W, Li X, Zhang Y (2024a) Guardians of the ledger: Protecting decentralized exchanges from state derailment defects. IEEE Trans Reliability","DOI":"10.1109\/TR.2024.3509414"},{"key":"10685_CR53","doi-asserted-by":"crossref","unstructured":"Li Z, Li W, Li X, Zhang Y (2024b) Stateguard: Detecting state derailment defects in decentralized exchange smart contract. In: Companion Proceedings of the ACM Web Conference 2024, pages 810\u2013813, 2024","DOI":"10.1145\/3589335.3651562"},{"issue":"6","key":"10685_CR54","doi-asserted-by":"publisher","first-page":"3435","DOI":"10.1007\/s10664-019-09715-8","volume":"24","author":"Y Liu","year":"2019","unstructured":"Liu Y, Wang J, Wei L, Xu C, Cheung SC, Wu T, Yan J, Zhang J (2019) Droidleaks: a comprehensive database of resource leaks in android apps. Empir Softw Eng 24(6):3435\u20133483. https:\/\/doi.org\/10.1007\/s10664-019-09715-8","journal-title":"Empir Softw Eng"},{"key":"10685_CR55","doi-asserted-by":"publisher","unstructured":"Liu L, Wei L, Zhang W, Wen M, Liu Y, Cheung SC (2021) Characterizing transaction-reverting statements in ethereum smart contracts. In: 36th IEEE\/ACM International Conference on automated software engineering, ASE 2021, Melbourne, Australia, November 15-19, 2021, IEEE, pages 630\u2013641. https:\/\/doi.org\/10.1109\/ASE51524.2021.9678597","DOI":"10.1109\/ASE51524.2021.9678597"},{"key":"10685_CR56","doi-asserted-by":"crossref","unstructured":"Li K, Xue Y, Chen S, Liu H, Sun K, Hu M, Wang H, Liu Y, Chen Y (2024) Static application security testing (sast) tools for smart contracts: How far are we? Proceed ACM Softw Eng 1(FSE):1447\u20131470","DOI":"10.1145\/3660772"},{"key":"10685_CR57","doi-asserted-by":"publisher","unstructured":"Luu L, Chu DH, Olickel H, Saxena P, Hobor A (2016) Making smart contracts smarter. In: Edgar\u00a0R. Weippl, Stefan Katzenbeisser, Christopher Kruegel, Andrew\u00a0C. Myers, and Shai Halevi, editors, Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, Vienna, Austria, October 24-28, 2016, pages 254\u2013269. ACM. https:\/\/doi.org\/10.1145\/2976749.2978309","DOI":"10.1145\/2976749.2978309"},{"key":"10685_CR58","doi-asserted-by":"crossref","unstructured":"Mitropoulos C, Kechagia M, Maschas C, Ioannidis S, Sarro F, Mitropoulos D (2024) Charting the evolution of solidity error handling. arXiv:2402.03186","DOI":"10.1145\/3674805.3686686"},{"key":"10685_CR59","unstructured":"Modularity, the way forward to building defi systems (2023). https:\/\/www.euler.finance\/blog\/modularity-the-way-forward-to-building-defi-systems"},{"key":"10685_CR60","doi-asserted-by":"crossref","unstructured":"Mossberg M, Manzano F, Hennenfent E, Groce A, Grieco G, Feist J, Brunson T, Dinaburg A (2019) Manticore: A user-friendly symbolic execution framework for binaries and smart contracts. In: Proceedings of the 2019 IEEE\/ACM 34th international conference on automated software engineering, pages 1186\u20131189","DOI":"10.1109\/ASE.2019.00133"},{"key":"10685_CR61","unstructured":"Mythril (2017) https:\/\/github.com\/ConsenSys\/mythril"},{"key":"10685_CR62","doi-asserted-by":"crossref","unstructured":"Nassirzadeh B, Sun H, Banescu S, Ganesh V (2022) Gas gauge: A security analysis tool for smart contract out-of-gas vulnerabilities. In: The International Conference on mathematical research for blockchain economy, pages 143\u2013167. Springer","DOI":"10.1007\/978-3-031-18679-0_9"},{"key":"10685_CR63","doi-asserted-by":"crossref","unstructured":"Nguyen TD, Pham LH, Sun J, Lin Y, Minh QT (2020) sfuzz: An efficient adaptive fuzzer for solidity smart contracts. In: Proceedings of the ACM\/IEEE 42nd international conference on software engineering, pages 778\u2013788","DOI":"10.1145\/3377811.3380334"},{"key":"10685_CR64","doi-asserted-by":"crossref","unstructured":"Nikoli\u0107 I, Kolluri A, Sergey I, Saxena P, Hobor A (2018) Finding the greedy, prodigal, and suicidal contracts at scale. In: Proceedings of the 2018 34th annual computer security applications conference, pages 653\u2013663","DOI":"10.1145\/3274694.3274743"},{"key":"10685_CR65","unstructured":"Number rounding protection example (2021) https:\/\/github.com\/delvtech\/elf-contracts\/commit\/cb909af9b9843abd477980ba6023fb97e053005c"},{"key":"10685_CR66","doi-asserted-by":"crossref","unstructured":"Olsthoorn M, van Deursen A, Panichella A (2022) Guiding automated test case generation for transaction-reverting statements in smart contracts. In: 2022 IEEE International conference on software maintenance and evolution (ICSME), IEEE, pages 163\u2013174","DOI":"10.1109\/ICSME55016.2022.00023"},{"key":"10685_CR67","unstructured":"Openzeppelin (2024) https:\/\/docs.openzeppelin.com\/openzeppelin\/"},{"key":"10685_CR68","unstructured":"Owasp smart contract top 10 (2023) https:\/\/owasp.org\/www-project-smart-contract-top-10\/"},{"issue":"1","key":"10685_CR69","doi-asserted-by":"publisher","first-page":"25","DOI":"10.1093\/biomet\/13.1.25","volume":"13","author":"K Pearson","year":"1920","unstructured":"Pearson K (1920) Notes on the history of correlation. Biometrika 13(1):25\u201345","journal-title":"Biometrika"},{"key":"10685_CR70","unstructured":"Property check for external call example (2021) https:\/\/github.com\/omni\/tokenbridge-contracts\/commit\/1166e00c5b976295914d625504f3b53b7bfc945c"},{"key":"10685_CR71","doi-asserted-by":"crossref","unstructured":"Ren M, Yin Z, Ma F, Xu Z, Jiang Y, Sun C, Li H, Cai, Y (2021) Empirical evaluation of smart contract testing: what is the best choice? In: Proceedings of the 30th ACM SIGSOFT international symposium on software testing and analysis, pages 566\u2013579","DOI":"10.1145\/3460319.3464837"},{"issue":"4","key":"10685_CR72","doi-asserted-by":"publisher","first-page":"557","DOI":"10.1109\/32.799955","volume":"25","author":"CB Seaman","year":"1999","unstructured":"Seaman CB (1999) Qualitative methods in empirical studies of software engineering. IEEE Trans Softw Eng 25(4):557\u2013572","journal-title":"IEEE Trans Softw Eng"},{"key":"10685_CR73","unstructured":"Slippage protection example (2022) https:\/\/github.com\/Equalizer-Finance\/equalizer-smart-contracts-v1\/commit\/10a9fcf30f13ac2bdeb7dfaf87665426844128d4"},{"key":"10685_CR74","unstructured":"Smtchecker and formal verification (2024) https:\/\/docs.soliditylang.org\/en\/latest\/smtchecker.html"},{"key":"10685_CR75","doi-asserted-by":"crossref","unstructured":"So S, Lee M, Park J, Lee H, Oh H (2020) Verismart: A highly precise safety verifier for ethereum smart contracts. In: 2020 IEEE Symposium on security and privacy (SP), IEEE, pages 1678\u20131694","DOI":"10.1109\/SP40000.2020.00032"},{"key":"10685_CR76","unstructured":"Solidity documentation (2024) https:\/\/docs.soliditylang.org\/en\/v0.8.25\/"},{"key":"10685_CR77","unstructured":"Solidity error handling: Assert, require, revert and exceptions (2024) https:\/\/docs.soliditylang.org\/en\/latest\/control-structures.html"},{"key":"10685_CR78","unstructured":"Solidity v0.8.0 breaking changes (2020) https:\/\/docs.soliditylang.org\/en\/latest\/080-breaking-changes.html"},{"key":"10685_CR79","unstructured":"Solidity-parser 0.1.1, (2024). https:\/\/pypi.org\/project\/solidity-parser\/"},{"key":"10685_CR80","doi-asserted-by":"crossref","unstructured":"Spearman C (1961) The proof and measurement of association between two things","DOI":"10.1037\/11491-005"},{"key":"10685_CR81","unstructured":"Stackexchange website (2024) https:\/\/stackexchange.com\/"},{"key":"10685_CR82","doi-asserted-by":"publisher","unstructured":"Stol KJ, Ralph P, Fitzgerald B (2016) Grounded theory in software engineering research: a critical review and guidelines. In: Laura\u00a0K. Dillon, Willem Visser, and Laurie\u00a0A. Williams, editors, Proceedings of the 38th International Conference on Software Engineering, ICSE 2016, Austin, TX, USA, May 14-22, 2016, pages 120\u2013131. ACM. https:\/\/doi.org\/10.1145\/2884781.2884833","DOI":"10.1145\/2884781.2884833"},{"key":"10685_CR83","doi-asserted-by":"publisher","unstructured":"Sun Y, Wu D, Xue Y, Liu H, Wang H, Xu Z, Xie X, Liu Y (2024) Gptscan: Detecting logic vulnerabilities in smart contracts by combining gpt with program analysis. In: Proceedings of the IEEE\/ACM 46th International Conference on Software Engineering, ICSE \u201924, New York, NY, USA. Association for Computing Machinery. https:\/\/doi.org\/10.1145\/3597503.3639117","DOI":"10.1145\/3597503.3639117"},{"key":"10685_CR84","unstructured":"Swc 101: Integer overflow and underflow (2024) https:\/\/swcregistry.io\/docs\/SWC-101"},{"key":"10685_CR85","unstructured":"Swc 104: Unchecked call return value (2024) https:\/\/swcregistry.io\/docs\/SWC-104"},{"key":"10685_CR86","unstructured":"Swc 105: Unprotected ether withdrawal (2024) https:\/\/swcregistry.io\/docs\/SWC-105"},{"key":"10685_CR87","unstructured":"Swc 107: Reentrancy (2024) https:\/\/swcregistry.io\/docs\/SWC-107"},{"key":"10685_CR88","unstructured":"Swc 123: Requirement violation (2024) https:\/\/swcregistry.io\/docs\/SWC-123"},{"key":"10685_CR89","unstructured":"Swc registry (2024) https:\/\/swcregistry.io\/"},{"key":"10685_CR90","unstructured":"The material for this study (2024) https:\/\/github.com\/Liuluuuu\/SRFaults"},{"key":"10685_CR91","doi-asserted-by":"crossref","unstructured":"Tikhomirov S, Voskresenskaya E, Ivanitskiy I, Takhaviev R, Marchenko E, Alexandrov Y (2018) Smartcheck: Static analysis of ethereum smart contracts. In: Proceedings of the 1st international workshop on emerging trends in software engineering for blockchain, pages 9\u201316","DOI":"10.1145\/3194113.3194115"},{"key":"10685_CR92","doi-asserted-by":"crossref","unstructured":"Tsankov P, Dan A, Drachsler-Cohen D, Gervais A, Buenzli F, Vechev M (2018) Securify: Practical security analysis of smart contracts. In: Proceedings of the 2018 ACM SIGSAC conference on computer and communications security, pages 67\u201382","DOI":"10.1145\/3243734.3243780"},{"key":"10685_CR93","unstructured":"Understanding the dao attack (2023) https:\/\/www.coindesk.com\/learn\/understanding-the-dao-attack\/"},{"key":"10685_CR94","unstructured":"Uniswap v2 router (2024) https:\/\/docs.uniswap.org\/contracts\/v2\/reference\/smart-contracts\/router-02"},{"key":"10685_CR95","unstructured":"Unprotected ether withdrawal exapmle (2021) https:\/\/github.com\/tatumio\/smart-contracts\/commit\/3cbf025e6c468822821dcf443300981850c1abd4"},{"issue":"1","key":"10685_CR96","doi-asserted-by":"publisher","first-page":"185","DOI":"10.1109\/TSE.2022.3148258","volume":"49","author":"Y Wang","year":"2022","unstructured":"Wang Y, Wang Y, Wang S, Liu Y, Xu C, Cheung SC, Yu H, Zhu Z (2022) Runtime permission issues in android apps: Taxonomy, practices, and ways forward. IEEE Trans Softw Eng 49(1):185\u2013210","journal-title":"IEEE Trans Softw Eng"},{"key":"10685_CR97","doi-asserted-by":"crossref","unstructured":"Wang Z, Chen J, Wang Y, Zhang Y, Zhang W, Zheng Z (2024) Efficiently detecting reentrancy vulnerabilities in complex smart contracts. arXiv:2403.11254","DOI":"10.1145\/3643734"},{"key":"10685_CR98","doi-asserted-by":"crossref","unstructured":"Wohlin C (2014) Guidelines for snowballing in systematic literature studies and a replication in software engineering. In: Proceedings of the 18th international conference on evaluation and assessment in software engineering, pages 1\u201310","DOI":"10.1145\/2601248.2601268"},{"key":"10685_CR99","doi-asserted-by":"crossref","unstructured":"Wu S, Li Z, Yan L, Chen W, Jiang M, Wang C, Luo X, Zhou H (2024) Are we there yet? unraveling the state-of-the-art smart contract fuzzers. In: Proceedings of the IEEE\/ACM 46th international conference on software engineering, pages 1\u201313","DOI":"10.1145\/3597503.3639152"},{"key":"10685_CR100","doi-asserted-by":"crossref","unstructured":"Xi R, Wang Z, Pattabiraman K (2024) Pomabuster: Detecting price oracle manipulation attacks in decentralized finance. In: 2024 IEEE Symposium on Security and Privacy (SP), IEEE, pages 3923\u20133942","DOI":"10.1109\/SP54263.2024.00257"},{"key":"10685_CR101","doi-asserted-by":"crossref","unstructured":"Yuan D, Park S, Zhou Y (2012) Characterizing logging practices in open-source software. In: Proceedings of the 2012 international conference on software engineering, pages 102\u2013112","DOI":"10.1109\/ICSE.2012.6227202"},{"key":"10685_CR102","unstructured":"Zero address check example (2021) https:\/\/github.com\/delvtech\/council\/commit\/7d01b7de58569109755b84af38524884fe68a1c8"},{"key":"10685_CR103","doi-asserted-by":"crossref","unstructured":"Zhang B (2024) Towards finding accounting errors in smart contracts. In: Proceedings of the IEEE\/ACM 46th international conference on software engineering, pages 1\u201313","DOI":"10.1145\/3597503.3639128"},{"key":"10685_CR104","doi-asserted-by":"publisher","unstructured":"Zhang Z, Zhang B, Xu W, Lin Z (2023) Demystifying exploitable bugs in smart contracts. In: 45th IEEE\/ACM International Conference on Software Engineering, ICSE 2023, Melbourne, Australia, May 14-20, 2023, IEEE, pages 615\u2013627. https:\/\/doi.org\/10.1109\/ICSE48619.2023.00061","DOI":"10.1109\/ICSE48619.2023.00061"},{"key":"10685_CR105","doi-asserted-by":"crossref","unstructured":"Zheng Z, Su J, Chen J, Lo D, Zhong Z, Ye M (2024) Dappscan: building large-scale datasets for smart contract weaknesses in dapp projects. IEEE Trans Softw Eng","DOI":"10.1109\/TSE.2024.3383422"},{"key":"10685_CR106","doi-asserted-by":"publisher","unstructured":"Zhou L, Xiong X, Ernstberger J, Chaliasos S, Wang Z, Wang Y, Qin K, Wattenhofer R, Song D, Gervais A (2023) Sok: Decentralized finance (defi) attacks. In: 44th IEEE Symposium on Security and Privacy (SP). IEEE. pp 2444\u20132461. https:\/\/doi.org\/10.1109\/SP46215.2023.10179435","DOI":"10.1109\/SP46215.2023.10179435"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-025-10685-3.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s10664-025-10685-3\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-025-10685-3.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,9,13]],"date-time":"2025-09-13T08:55:21Z","timestamp":1757753721000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s10664-025-10685-3"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,7,17]]},"references-count":106,"journal-issue":{"issue":"5","published-print":{"date-parts":[[2025,9]]}},"alternative-id":["10685"],"URL":"https:\/\/doi.org\/10.1007\/s10664-025-10685-3","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"type":"print","value":"1382-3256"},{"type":"electronic","value":"1573-7616"}],"subject":[],"published":{"date-parts":[[2025,7,17]]},"assertion":[{"value":"3 June 2025","order":1,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"17 July 2025","order":2,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}},{"order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Declarations"}},{"value":"Not applicable.","order":2,"name":"Ethics","group":{"name":"EthicsHeading","label":"Ethical approval"}},{"value":"Not applicable.","order":3,"name":"Ethics","group":{"name":"EthicsHeading","label":"Informed consent"}},{"value":"The authors declare that they have no conflict of interest.","order":4,"name":"Ethics","group":{"name":"EthicsHeading","label":"Conflict of Interest"}},{"value":"Not applicable.","order":5,"name":"Ethics","group":{"name":"EthicsHeading","label":"Clinical Trial Number"}}],"article-number":"141"}}