Go-Ethereum
使用 testrpc 和 truffle 手動執行事務
我開始在 geth 控制台中做一些工作:
geth --dev console
但已轉向使用松露進行開發。
要在 geth 控制台中調試,我習慣於執行以下操作:
eth.sendTransaction({from: eth.accounts[0], to: eth.accounts[1], value: web3.toWei(1, "ether")});
然後手動呼叫
miner.start()
.有沒有辦法使用 testrprc 做到這一點?
而不是
$geth --dev console
你可以這樣做:在終端上鍵入
$testrpc
以啟動 testrpc 。然後按照此處所述部署您的合約並打開 truffle 控制台。truffle控制台可以訪問web3 api,因此您實際上可以執行與 geth 控制台相同的操作。
對於上面段落中的步驟,簡而言之,您打開另一個終端並執行
$truffle deploy
然後$truffle console
。當控制台打開時,您可以eth.sendTransaction({from: eth.accounts[0], to: eth.accounts[1], value: web3.toWei(1, "ether")});
像往常一樣鍵入。
在 testrpc 中:
truffle(development)> web3.eth.getBalance(web3.eth.accounts[0]) { [String: '98599991999999979000'] s: 1, e: 19, c: [ 985999, 91999999979000 ] } truffle(development)> web3.eth.getBalance(web3.eth.accounts[1]) { [String: '101000000000000000000'] s: 1, e: 20, c: [ 1010000 ] } truffle(development)> web3.eth.sendTransaction({from: web3.eth.accounts[0], to: web3.eth.accounts[1], value: web3.toWei(1, "ether")}); '0x3b9 115191839b371200e107600c27e98ef64b2b823e7b4e02556262db06ee609' truffle(development)> web3.eth.getBalance(web3.eth.accounts[0]) { [String: '97599991999999958000'] s: 1, e: 19, c: [ 975999, 91999999958000 ] } truffle(development)> web3.eth.getBalance(web3.eth.accounts[1]) { [String: '102000000000000000000'] s: 1, e: 20, c: [ 1020000 ] }