Truffle-Test
松露測試:理解測試的問題
我試圖了解提供的測試:
("Test balance after deposit", function() { return SimpleBank.deployed().then(function(instance) { sb = instance; return sb.deposit({ from: accounts[0], value: web3.utils.toWei('10', 'ether') }); })
智能合約程式碼如下:
contract SimpleBank{ uint public transactions; mapping (address=>uint) balances; function deposit() public payable{ balances [msg.sender] +=msg.value; transactions++; } }
測試呼叫:
sb.deposit({ from: account[0], value: web3.utils.toWei('10', 'ether') });
‘10’ 乙太幣從哪個賬戶流向了哪個賬戶
$$ 0 $$? “交易”狀態變數的目的是什麼?
10 個乙太幣進入合約
SimpleBank
並留在那裡。在deposit
函式中,合約設置了一些額外的數據來標記誰發送了多少乙太幣,但這只是合約的內部簿記,不會將任何乙太幣移動到任何地方。至於
transactions
變數,它可能只是展示瞭如何使用狀態變數。它沒有任何真正的好處,它只是一個例子。與所有契約一樣 - 僅供參考。