yingsper·

03 / CHAIN LAB

先在模拟中,
理解每一笔操作。

两个测试账户,一个资金池合约,
一张操作网页,以及会自动调用合约的 Python 程序。

这项实验在做什么

使用 Mac 上的 Anvil 单节点开发链和 Solidity 合约,练习存入、提取、余额查询、权限检查与交易记录查看。账户和资产都是模拟的,不涉及真实资金。

不只验证成功,也验证失败

  • 账户只能提取属于自己的余额。
  • 只有所有者可以暂停相关操作。
  • 同一个请求重复提交时,不应再次产生相同资金动作。
  • 连接失败或响应丢失时,Python 程序按照限定次数重试。

本地项目记录了 11 项测试通过,包括重复请求、权限、异常接收与重入相关测试。它仍是学习原型,测试通过不代表生产合约已完成安全审计。

开发链并不是公共链

当前实验只在本机运行,重启后链上状态会重置。本站没有连接其交易接口,也不会向访问者索取钱包或签名。

后面可以探索什么

先保存复现实验所需的代码与测试记录,再选择公共测试链验证,或使用真正的多节点配置实验私有网络。这两步都还没有实施。

阅读:为什么先测试失败 →