帖子
分享您的知识。

D’versacy 10
Aug 15, 2025
文章
🐞 在 Sui 上调试移动包和交易 — 变得简单!
❓ 问题: 在 Sui 上调试 Move 就像在大海捞针一样. 错误是神秘的,堆栈跟踪看起来很陌生,重现错误很困难.
💡 为什么会发生这种情况: 链上故障的行为与传统的代码错误不同. 如果没有明确的调试循环,修复它们就像猜测一样.
🎯 目标: 为你配备工具、日志和工作流程,让你满怀信心地重现、调试和修复问题.
🛠️ 1) 使用本地确定性开发网络
- 使用固定种子账户启动单节点本地开发网络,以实现可重复性.
- 像
sui start
或这样的命令run-local-network.sh
效果很好. ***优点:**在没有网络噪音的情况下进行测试! 📚 docs.sui.io
🧪 2) 单元测试和移动测试工具
- 运行:
sui move test
- 针对边缘案例和预期恢复编写测试.
- 更快的反馈 = 更快地解决错误. 🐛
🔍 3) 交易模拟和记录
*使用 SDK API 在提交之前进行模拟.
- 检查交易效果以查看: ✅ 创建的对象 ✅ 变异的物体 ✅ 已删除的对象
- 读取发出的事件以逐步追踪发生的事情. 📚 Mysten Labs TS SDK 文档
📄 4) 使用节点日志和调试标志
- 使用详细日志记录运行节点以获取详细的执行跟踪.
- 检查 Sui 存储库中是否有调试标志的使用情况.
- 如果可以,请查看验证器日志以了解棘手的问题.
5) 分步调试流程
- 使用相同的对象 ID/输入进行本地复制.
- 写
sui move test
一个模仿交易的代码. 3.检查交易效果和日志. - 添加断言以查明错误的状态变化.
- 修复 → 测试 → 重复直到稳定.
- Sui
0
分享
评论
Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.
721帖子1838答案

奖励活动八月