Hardhat
hardhat-deploy: ProviderError: evm_snapshot 方法不存在/不可用
我正在嘗試使用安全帽執行測試,並使用以下命令部署我的部署/固定裝置:
npx hardhat test --network rinkeby --deploy-fixture
當我執行它時,我收到以下錯誤:
ProviderError: The method evm_snapshot does not exist/is not available
我有一個
deploy
文件夾,其中包含我要部署的所有方法,並且npx hardhat deploy --network rinkeby
效果很好。是什麼賦予了?
夾具功能目前不適用於測試網。如果你想在測試網上執行你的測試,你首先必須部署合約,然後執行你的測試。
以下假設您的燈具設置看起來像這樣(?):
await deployments.fixture(contractName);
isLocalEnv
您可以按如下方式定義函式。function isLocalEnv(envName: string) { return !!({ hardhat: true, localhost: true, } as Record<string, true>)[envName]; }
然後,無論您在何處設置夾具,
network
從導入hardhat
並使用isLocalEnv
以防止可能無用的夾具 init。阿卡。if (isLocalEnv(network.name)) { await deployments.fixture(contractName); }