"Solidity智能合约质量保证工具Deviant:突变测试的创新应用"
需积分: 5 138 浏览量
更新于2024-03-14
收藏 695KB PDF 举报
In recent years, the popularity of blockchain has experienced explosive growth, with Ethereum being one of the leading blockchain platforms. Solidity is a widely used scripting language for creating smart contracts in Ethereum applications. Quality assurance in Solidity contracts is crucial, as errors or vulnerabilities can lead to significant financial losses. However, it is currently unclear the extent to which many of these applications provide quality assurance.
Mutation testing is the process of intentionally injecting faults into the target program and then running a test suite against the various injected errors. Mutation testing is used to evaluate the effectiveness of a test suite and measure its ability to cover certain types of faults. This thesis introduces Deviant, the first implementation of a mutation testing tool for Solidity smart contracts. Deviant implements mutation operators that cover unique features of Solidity based on a fault model we constructed, as well as traditional mutation operators used for other programming languages.
By utilizing Deviant, developers can assess the effectiveness of their test suites, identify potential vulnerabilities in their smart contracts, and improve the overall quality assurance of their applications. The tool provides a valuable resource for the Ethereum community to enhance the security and reliability of smart contracts. The research conducted in this thesis contributes to the ongoing efforts to ensure the robustness and trustworthiness of blockchain applications, particularly those built on the Ethereum platform. Deviant serves as a critical tool in the arsenal of developers seeking to create secure and reliable smart contracts, ultimately helping to protect financial assets and uphold the integrity of the blockchain ecosystem.
2019-07-23 上传
2021-02-02 上传
2021-08-04 上传
2021-02-05 上传
点击了解资源详情
2021-05-18 上传
2023-02-27 上传
2021-03-31 上传
2024-05-25 上传
小兔子平安
- 粉丝: 251
- 资源: 1940
最新资源
- 俄罗斯RTSD数据集实现交通标志实时检测
- 易语言开发的文件批量改名工具使用Ex_Dui美化界面
- 爱心援助动态网页教程:前端开发实战指南
- 复旦微电子数字电路课件4章同步时序电路详解
- Dylan Manley的编程投资组合登录页面设计介绍
- Python实现H3K4me3与H3K27ac表观遗传标记域长度分析
- 易语言开源播放器项目:简易界面与强大的音频支持
- 介绍rxtx2.2全系统环境下的Java版本使用
- ZStack-CC2530 半开源协议栈使用与安装指南
- 易语言实现的八斗平台与淘宝评论采集软件开发
- Christiano响应式网站项目设计与技术特点
- QT图形框架中QGraphicRectItem的插入与缩放技术
- 组合逻辑电路深入解析与习题教程
- Vue+ECharts实现中国地图3D展示与交互功能
- MiSTer_MAME_SCRIPTS:自动下载MAME与HBMAME脚本指南
- 前端技术精髓:构建响应式盆栽展示网站