Web3js

松露測試:設置塊時間

  • March 27, 2020

我正在使用 Truffle,我想在執行測試時增加阻塞時間以模仿主網的阻塞時間。

據我了解,Truffle 已經實例化了一個可以使用的 web3 實例,因此我嘗試在我的測試文件中使用以下內容對其進行修改:

const ganache = require('ganache-core')
web3.setProvider(ganache.provider({ blockTime: 15 }))

然而,每個測試在不到 200 毫秒內完成。

我將如何改變阻塞時間?

您可以簡單地使用-b 15.

有關更多詳細資訊,請參見此處

更新:

上述解決方案適用於將 Ganache 作為單獨程序啟動時。

為了在你的測試中模擬一個 15 秒的 elpase,你可以簡單地使用這個:

web3.currentProvider.send({method: "evm_increaseTime", params: [15]});

引用自:https://ethereum.stackexchange.com/questions/80924