链上ETF研发日志 #3:合约测试完成

昨天刚刚完成合约代码开发,原本预计接下来的单元测试至少还要花上几天时间。但没想到的是,仅仅一个晚上,在我洗澡前后,所有单元测试就已经全部写完并通过 了,而且覆盖率还非常高

如果是以前我一个人慢慢写测试代码,可能得花上一整个星期,调试各种边界条件、状态分支,还要不断排查 bug。而这次在 AI 助力下,我只需要不断 review 和 refine,测试逻辑就能快速成型并跑通。这种效率飞跃,让我第一次在"测试环节"也感受到了爽感

为了进一步加快流程,我让 Claude Code 先基于所有已完成的合约,整理出一份完整的测试用例文档 。我原以为它最多只能覆盖一些主流程路径,比如申购、赎回、参数正常的交互流程,结果它输出的文档却远比我预期中详细和系统:不仅涵盖主流程的每个阶段,还列出了大量边界条件和异常路径,包括:

  • 非法参数输入的处理
  • 状态变量未初始化时的行为
  • 权限控制下的异常调用
  • 重入攻击与溢出保护的验证

这让我意识到,Claude 在"结构化逻辑覆盖"方面的能力,已经不仅仅是"能用",而是真的可以作为一位 测试设计搭子 来信任。

👇 这是 Claude 自动生成的测试用例文档结构截图,可以看到它对每个模块都进行了系统性拆解:

接下来,我就基于这份文档,让它开始编写实际的单元测试代码。它先写完了第一个合约的测试文件,并自动运行验证通过后就暂停,等待我进一步指令。确认没问题后,我直接让它把所有剩余合约的单元测试一起补上。

然后我就去洗澡了。

等我洗完出来,发现它已经把所有测试都写完了。不少用例还涉及 Mock 合约和定制数据的构造,它也全部自动实现了,而且结构清晰、逻辑闭环,几乎不需要我手动补漏。

我统计了一下,它总共编写了 220 多个测试用例,覆盖了所有合约逻辑、边界情况和异常路径,几乎没有遗漏。这远远超出了我对 AI coding agent 的预期。

说实话,测试工程师真的有点危险了。

到这里,合约代码开发完成,单元测试也已完成,下一步就要开始编写部署脚本并且部署到测试网上了。测试网部署之后,我也会尝试跑通整个链上 ETF 的操作流程,验证它是否真的能按照设想稳定运行。下一篇更新见。

相关推荐
寒秋丶10 小时前
Milvus:数据库层操作详解(二)
数据库·人工智能·python·ai·ai编程·milvus·向量数据库
寒秋丶14 小时前
Milvus:集合(Collections)操作详解(三)
数据库·人工智能·python·ai·ai编程·milvus·向量数据库
寒秋丶14 小时前
Milvus:Schema详解(四)
数据库·人工智能·python·ai·ai编程·milvus·向量数据库
骑猪兜风23314 小时前
Anthropic 研究员亲述:用代码、MCP、Skills 构建高效 Claude 智能体的方法论 |Anthropic 播客
agent·claude·mcp
骑猪兜风23315 小时前
独家揭秘 6 位工程师的 AI 工作流:流程比工具更重要
ai编程
MicroTech202516 小时前
微算法科技(NASDAQ MLGO):DPoS驱动区块链治理与DAO机制融合,共筑Web3.0坚实基石
科技·web3·区块链
用户40993225021217 小时前
Vue 3模板如何通过编译三阶段实现从声明式语法到高效渲染的跨越
前端·ai编程·trae
寒秋丶17 小时前
Milvus:向量字段-二进制向量、稀疏向量与密集向量(六)
数据库·人工智能·python·ai·ai编程·milvus·向量数据库
寒秋丶17 小时前
Milvus:通过Docker安装Milvus向量数据库(一)
数据库·人工智能·docker·ai·ai编程·milvus·rag
CC大煊17 小时前
【cursor】常用使用技巧篇
ai编程