中文

SuMo:一种面向Solidity智能合约的变异测试策略

软件工程 2021-05-11 v1

摘要

智能合约是部署并在区块链基础设施中执行的软件程序。由于其不可变的本质——直接源于部署基础设施的特定特征,智能合约在发布前必须经过彻底测试。测试是有助于提升智能合约可靠性、从而可能防止宝贵资产重大损失的主要活动之一。因此,为测试人员提供能够评估其所执行活动的工具十分重要。变异测试是一种用于评估测试套件故障检测能力的强大方法。在本文中,我们提出SuMo,一种新颖的面向以太坊智能合约的变异测试工具。SuMo实现了一组44个变异算子,这些算子从最新的Solidity文档以及知名的变异测试工具出发设计而来。它们可模拟智能合约开发者可能犯下的多种故障。该算子集的设计旨在限制夭折变异体的生成,后者会拖慢变异测试过程并限制工具的可用性。我们报告了SuMo在具有可用测试套件的开源项目上的初步评估。所得结果令人鼓舞,并表明SuMo能有效帮助开发者交付更可靠的智能合约。

关键词

引用

@article{arxiv.2105.03626,
  title  = {SuMo: A Mutation Testing Strategy for Solidity Smart Contracts},
  author = {Morena Barboni and Andrea Morichetta and Andrea Polini},
  journal= {arXiv preprint arXiv:2105.03626},
  year   = {2021}
}