本文已参与「新人创作礼」活动,一起开启掘金创作之路。
1、先看目录
2、全局安装truffle
sudo npm install -g truffle
truffle中有一个box的概念,为了开发方便,就已经把代码框架打包好,可以直接下载。 3、全局安装ganache节点
sudo npm install -g ganache-cli //安装ganache-cli节点
ganache-cli //启动ganache-cli节点,后续会用到。可单独开一个终端
Ganache是一个完整的在内存中的区块链(因为在内存中,所以重启后数据会丢失),仅仅存在于你开发的设备上。
4、安装metamask插件,MetaMask连接ganache节点 安装就不用说了,之间浏览器插件商店搜一下安装就好了。
网络名称随意,URL看ganache界面
5、创建项目喽!!!
mkdir InsuranceContract //创建项目目录、项目名称
cd InsuranceContract //进入目录
truffle init //truffle 初始化项目,得到项目框架(当然也可以用truffle提供的box来创建项目
npm init //将项目转换为npm项目(提示时都使用默认值即可)
6、为了方便,安装一下lite-server服务器吧
npm install lite-server //安装项目服务器
7、根目录下安装truffle-contract,对web3进行了封装
npm install truffle-contract //安装truffle框架提供的contract,对web3进行了封装,方便与合约进行交互
8、初始框架
|-- InsuranceContract
|-- contracts //放Solidity合约代码
-- InsuranceContract.sol //必须要,可以把初始化的合约删除,放上自己的合约
|-- migrations //合约部署脚本
-- 1_initial_migration.js //用来部署InsuranceContract.sol
|-- test //测试代码
|-- node_modules //npm模块,lite-server和truffle-contract在里面
-- truffle-config.js //windows下的truffle配置文件
-- truffle.js //linux、mac下的truffle配置文件
-- package.json //npm init后的配置文件
9、编译合约,终端输入
truffle compile
10、测试合约 测试合约有solidity和js两种方式 test目录下创建测试文件
|-- InsuranceContract
|-- test
-- InsuranceContract.sol
-- InsuranceContract.js
测试文件就不写出来了 执行测试命令:
truffle test //执行所有测试文件
truffle test ./test/InsuranceContract.sol //指定测试哪个文件