用途:为 Solidity 智能合约编写并运行全面测试,覆盖单元测试、集成测试、Gas 优化测试、边界模糊测试、主网分叉测试、覆盖率报告与合约验证。
主要能力:Hardhat 侧支持单元测试、fixture 复用、时间推进、事件与回滚断言、快照回滚、主网分叉、账户模拟、Gas 对比与覆盖率;Foundry 侧通过 Forge 提供断言、vm.prank、vm.deal、vm.expectRevert、Fuzz 测试与主网分叉。配置示例涉及 hardhat-toolbox、hardhat-etherscan、hardhat-gas-reporter、solidity-coverage,并读取 MAINNET_RPC_URL、GOERLI_RPC_URL、PRIVATE_KEY、ETHERSCAN_API_KEY 等环境变量。
必要用法:Hardhat 覆盖率命令为 npx hardhat coverage;合约验证可用 npx hardhat verify;Foundry 使用 forge-std/Test.sol 与 vm 作弊码;CI 中可执行 npm install、npx hardhat compile、npx hardhat test、npx hardhat coverage。
适用场景:代币与协议合约的部署、转账、事件、权限、重入、Gas 上限与主网真实合约交互等测试。
限制:资料未提供具体版本兼容性、收费标准、完整安装步骤、Foundry 安装命令及各脚本的完整参数说明。