Zombienet:基于Substrate的区块链测试框架指南

Zombienet:基于Substrate的区块链测试框架指南

zombienet A cli tool to easily spawn ephemeral Polkadot/Substrate networks and perform tests against them. zombienet 项目地址: https://gitcode.com/gh_mirrors/zo/zombienet


项目介绍

Zombienet是一个专为Substrate区块链设计的命令行工具,旨在简化临时网络的生成与测试过程。它通过提供直观的CLI界面,让用户能够轻松地部署瞬时的Polkadot/Substrate网络,并执行针对这些网络的测试。此项目目前处于活跃开发阶段,功能持续扩展中。支持的测试范围包括链上存储、指标、日志以及自定义JavaScript脚本与链交互。

主要特点:

  • 简易部署:一键生成测试网络。
  • 多样化测试:覆盖多种检查点,从基础数据到复杂逻辑。
  • 多平台支持:Node.js环境运行,支持Kubernetes、Podman、原生本地方式运行节点。

项目快速启动

安装Zombienet

通过二进制文件(推荐MacOS用户)
  1. 访问GitHub Release页面下载适用于MacOS的最新二进制文件。
  2. 将下载的文件移到工作目录,重命名为zombienet
  3. 授予执行权限:
    chmod +x zombienet
    
  4. 移除文件的隔离状态:
    xattr -d com.apple.quarantine zombienet
    
  5. 运行帮助命令验证安装:
    ./zombienet help
    
通过NPM(要求Node.js环境)

对于已经安装Node.js的用户,可以通过NPM全局安装:

npm i @zombienet/cli -g

然后运行:

zombienet help

快速启动示例

以本地模式启动一个简单的网络配置:

首先,确保你有一个适合的Substrate相关节点二进制文件在路径中,然后创建一个基本的配置文件,例如simple-network.toml

[settings]
timeout = 1000

[relaychain]
default_image = "paritypr/polkadot-debug:master"
chain = "rococo-local"

[[relaychain.nodes]]
name = "node1"

[[parachains]]
id = 100
[collators]
name = "collator1"
image = "paritypr/substrate-collector:latest"
command = "your-custom-binary"

接着,使用Zombienet启动这个网络:

zombienet spawn --provider native simple-network.toml

应用案例和最佳实践

应用案例通常涉及模拟网络环境,用于在真实部署前测试新功能、升级或者进行安全性审计。最佳实践中,开发者应该详细规划测试场景,涵盖边缘情况,使用Zombienet的自然语言测试定义来编写清晰易读的测试脚本。定期利用Zombienet更新和测试网络升级,可以大幅提高开发效率并减少线上问题。


典型生态项目集成

虽然Zombienet主要是为Substrate及Polkadot生态系统服务,但在实际应用中,它可以作为任何需要快速搭建和测试区块链网络场景的强大工具。开发者可以在构建去中心化应用程序(DApps)、跨链桥接项目或是定制化的区块链解决方案时,利用Zombienet快速迭代测试网络配置,确保项目顺利集成到更广泛的Substrate或Polkadot生态之中。


请注意,由于技术的快速发展,具体命令和依赖可能会有所变化,建议参考最新的官方文档或GitHub仓库获取最新的指导信息。

zombienet A cli tool to easily spawn ephemeral Polkadot/Substrate networks and perform tests against them. zombienet 项目地址: https://gitcode.com/gh_mirrors/zo/zombienet

猜你喜欢

转载自blog.csdn.net/gitblog_00322/article/details/142609390