环境搭建
安装nodejs
安装truffle
安装ganache-cli
安装MetaMask
创建项目
感谢truffle unbox,你不必从头开始创建项目。
这一步需要稍等一会,truffle会自动下载pet-shop项目,项目目录如下:
contracts存放智能合约;
migrations存放部署脚本;
test存放测试用例;
truffle.js配置文件,例如区块链地址和端口;
图四:项目目录
编写智能合约
在contracts目录下,添加合约文件Adoption.sol:
编译智能合约
启动以太坊客户端
注意这里的Mnemonic和Accounts,后面MetaMask需要用到。
部署合约(migrate)
在migrations目录下,创建一个部署脚本2_deploy_contracts.js:
注意这里的写法,artifacts.require("Adoption")的参数为合约名称。
此外,为什么部署脚本要以数字开头呢?这是truffle部署时用的ID。接下来执行部署命令:
使用--reset来强制重编译并部署所有合约。
测试合约
在test目录下,新建测试案例TestAdoption.sol:
接下来,运行测试案例: