SuperAPI AI 工具集

web3-testing

测试与质量

查看项目

更新于 10-16 00:30

技能介绍

用途:为 Solidity 智能合约编写与组织测试,覆盖单元测试、集成测试、Gas 优化测试、模糊测试、主网分叉测试、覆盖率报告与合约验证,并支持接入 CI/CD。

主要能力:Hardhat 侧提供配置示例(solidity 版本与优化器、hardhat 网络分叉、goerli 网络、gasReporter、etherscan),使用 chai、ethers、loadFixture、time 等编写部署、转账、事件、时间锁与 Gas 断言测试;Foundry 侧使用 forge-std/Test,提供 setUp、assertEq、vm.prank、vm.deal、vm.expectRevert、vm.assume 及 testFuzz 模糊测试、vm.createSelectFork 主网分叉测试。高级模式包括快照与回滚(evm_snapshot/evm_revert)、hardhat_reset 主网分叉、hardhat_impersonateAccount 模拟账户、Gas 对比测试。

使用方式:Hardhat 中运行 npx hardhat coverage 生成覆盖率报告,使用 npx hardhat verify --network mainnet CONTRACT_ADDRESS "Constructor arg1" "arg2" 验证合约,或在脚本中调用 hre.run("verify:verify", {...})。CI 示例使用 GitHub Actions 执行 npm install、npx hardhat compile、npx hardhat test、npx hardhat coverage 并上传 Codecov。

适用场景:编写合约单元测试、搭建集成测试套件、Gas 优化验证、边界条件模糊测试、基于真实主网合约的分叉测试、自动化覆盖率与合约验证。

限制:资料未提供具体收费、价格、平台支持范围与效果数据;示例中的 RPC、API Key 等需自行配置,部分代码为示意,需按实际项目调整。