在开发智能契约时,如何调试它?是否有任何调试、测试工具或模拟器可以用来检查我的代码?
发布于 2016-01-21 07:06:02
发布于 2016-02-17 00:46:17
这些都是很好的工具,但是我发现日志事件对于调试来说要容易得多,而且如果您正在用金钱做任何事情,那么您需要记录所发生的事情。
在可靠的情况下,您可以使用事件登录。然后,您可以收听与web3.js“allEvents”回调签订的合同上的所有事件。
这就是我如何调试我的(目前) 780行的坚固性。
发布于 2016-10-25 21:21:58
要调试合同,可以使用实体浏览器
调试器为您提供了逐步调试任何事务(创建或调用)和可视化内存/存储空间的能力。它帮助您跟踪天然气的成本,通过操作码和剩余的天然气后,每一步。
要调试事务,有两种方法:1-使用块号和事务索引。
2-使用事务散列。
当加载事务成功时,将显示散列、从字段和到字段。然后加载vm跟踪。
调试器本身包含几个控件,这些控件允许跨出跟踪并查看所选步骤的当前状态。滑块和步进动作:滑块允许快速地从一个状态移动到另一个状态。步骤操作是:后退一步,向前一步跳下一次调用(这将选择下一个状态,它引用上下文更改-- CALL,CALLCODE,DELEGATECALL,CREATE)状态查看器:右上面板包含有关当前步骤的基本信息: VMTraceStep:当前步骤跟踪中的索引。步骤添加内存气体:这个步骤使用的气体剩余气体:气体左加载地址:当前代码加载,指正在执行的代码。其他6个面板描述当前选定的状态:指令列表:定义当前执行代码的所有指令的列表。堆栈存储更改内存调用数据$ Call Stack
通过单击第一行代码的左边框,可以添加和删除混合断点中的断点。您可以添加任意多个断点。
https://ethereum.stackexchange.com/questions/184
复制相似问题