【区块链】truffle测试

配置区块链网络

启动Ganache软件

使用VScode打开项目的wordspace

配置对外访问的RPC接口为7545,配置项目的truffle-config.js实现与新建Workspace的连接。

创建项目

创建一个新的目录

bash 复制代码
mkdir MetaCoin
cd MetaCoin

下载metacoin盒子

bash 复制代码
truffle unbox metacoin
bash 复制代码
contracts/:Solidity 合约目录
migrations/:可编写脚本的部署文件的目录
test/:用于测试应用程序和合约的测试文件目录
truffle-config.js:松露配置文件

编译合约

bash 复制代码
truffle compile --all

编写测试用例

基本用法

artifacts.require()

引入合约的名称,返回抽象合约

javascript 复制代码
const HelloWorld = artifacts.require("HelloWorld");
module.exports

导出函数

javascript 复制代码
module.exports = function(deployer, network, accounts) {
  
}

// Deploy a single contract without constructor arguments
deployer.deploy(A);

// Deploy a single contract with constructor arguments
deployer.deploy(A, arg1, arg2, ...);

// Don't deploy this contract if it has already been deployed
deployer.deploy(A, {overwrite: false});
contract()
  • 在函数运行之前,合约将被重新部署到正在运行的以太坊客户端,以便其中的测试以干净的合约状态运行。
  • 提供以太坊客户端可用的帐户列表,您可以使用这些帐户来编写测试。
it()

每一个需要执行的测试用例。

相关推荐
小王毕业啦7 小时前
(1990-2024年)个股交易活跃度、个股换手率
大数据·人工智能·数据挖掘·数据分析·区块链·社科数据
app软件定制开发173770910729 小时前
世界杯应用开发的关键要点与注意事项
大数据·区块链
OneBlock Community9 小时前
经济模型大升级 + 首只 DOT ETF 落地,Polkadot 的新周期来了?
区块链
区块链小八歌12 小时前
链上资本的“工业革命”:拆解 Berachain “Bera Builds Businesses” 的真实业务版图
区块链
狙击主力投资工具2 天前
26年5月4日本周复盘总结,好票机会,下周大盘方向,热门板块方向,操作建议,实用干货
人工智能·区块链
长安链开源社区2 天前
长安链开发大赛 在期待什么样的作品?
web3·区块链
Blockchain Learning2 天前
去中心化身份(DID)模型解析:区块链如何重塑身份管理?
大数据·去中心化·区块链
BlockChain8882 天前
以太坊开发入门:从 0 到 1 搭建第一个 DApp
区块链·智能合约
haizhongjien2 天前
初始化代币发行数量并设置好锁仓和释放信息
区块链
财***权8602 天前
期权手续费一览表最新的标准
区块链