Solidity

如何從使用 Truffle 的 Solidity 測試訪問由 TestRPC 創建的測試帳戶?

  • July 3, 2017

使用 Javascript 測試,可以訪問 TestRPC 創建的帳戶:

contract('MetaCoin', function(accounts) {
  // tests here can access accounts[n] to get the public keys
}

但是我怎樣才能使用用 Solidity 編寫的測試中的這些地址呢?

我想提個建議。

TestMetaCoin.sol範例中,您可以看到使用了合約所有者地址。(請參閱tx.origin)因此,我認為您沒有理由不能在 Solidity 庫文件中硬編碼其他帳戶地址,然後將該庫導入您的測試。然後,您可以$ testrpc --account="<privatekey>,balance" [--account="<privatekey>,balance"]確保每次啟動時重複使用庫中的地址。

你可以用 Solidity 測試做一些相當複雜的事情。(請參閱http://truffleframework.com/tutorials/testing-for-throws-in-solidity-tests)但是,從 truffle 文件來看,我覺得它們可能不是為您的案例設計的。

http://truffleframework.com/docs/getting_started/solidity-tests

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