是否有可能在测试开始前将资金发送给Echnidna fuzzing合同?例如,如果我想测试address(this).balance != 0作为一个不变量,我将如何提前与硬币签约?
contract MyContractFuzz is MyContract {
function echidna_test_balance() public view returns (bool) {
return (address(this).balance != 0);
}
}发布于 2023-01-10 07:55:28
是的,创建一个配置文件,例如echidna.yaml并添加以下内容:
#balanceContract overrides balanceAddr for the contract address
balanceContract: 0你可能也想玩这个,但我不认为有必要。
# #balanceAddr is default balance for addresses
# balanceAddr: 0xffffffff记住将构造函数更改为payable,否则构造函数将失败,并传入配置,例如echidna-test . --config echidna.yaml。
这是到默认配置的链接。
https://ethereum.stackexchange.com/questions/142623
复制相似问题