Ethereum 模拟测试环境 Ganache CLI 使用教程
ganache-cli-archive 项目地址: https://gitcode.com/gh_mirrors/gan/ganache-cli-archive
1. 项目介绍
Ganache CLI 是一个由 Truffle 套件提供的 Ethereum 模拟测试环境工具,它允许开发者创建一个本地的 Ethereum 网络进行开发和测试。Ganache CLI 使用 ethereumjs 模拟完整的客户端行为,使得开发 Ethereum 应用程序更加快速、简单和安全。它支持所有流行的 RPC 功能和特性(如事件日志),并且可以确定性地运行,以简化开发流程。
2. 项目快速启动
在开始使用 Ganache CLI 之前,请确保你的系统已经安装了 Node.js(版本 8 或以上)。
安装 Ganache CLI
使用 npm 安装:
npm install -g ganache-cli
或者,如果你使用 Yarn:
yarn global add ganache-cli
启动 Ganache CLI
启动 Ganache CLI,默认情况下,它会监听 8545 端口:
ganache-cli
你可以指定不同的选项来自定义你的测试环境,例如:
-a
或--accounts
:指定在启动时生成的账户数量。-e
或--defaultBalanceEther
:指定分配给每个测试账户的 ether 数量,默认是 100。-p
或--port
:指定监听的端口号。-h
或--host
:指定监听的主机名或 IP 地址。
示例启动命令
ganache-cli -a 10 -e 200 -p 8545 -h 127.0.0.1
此命令将生成 10 个账户,每个账户有 200 ether,并在本地机器的 8545 端口上监听。
3. 应用案例和最佳实践
案例一:本地开发
在本地开发智能合约时,使用 Ganache CLI 可以快速部署和测试合约。例如:
# 部署合约
truffle migrate --network development
# 与合约交互
truffle console --network development
最佳实践
- 使用
--deterministic
选项生成可预测的账户地址,以便在持续集成环境中重现结果。 - 在进行单元测试时,使用
--fork
选项从主链或测试链的特定区块开始分叉,以测试真实的区块链数据。
4. 典型生态项目
Ganache CLI 是 Truffle 套件的一部分,通常与以下项目一起使用:
- Truffle:一个 Ethereum 开发环境、测试框架和部署工具。
- Ganache:一个图形界面的 Ethereum 模拟测试环境,与 Ganache CLI 功能相同。
- Drizzle:一个用于与 Ethereum 智能合约交互的轻量级库。
通过结合这些工具,开发者可以创建、测试和部署 Ethereum 应用程序。
ganache-cli-archive 项目地址: https://gitcode.com/gh_mirrors/gan/ganache-cli-archive