truffle部署合约ganache测试
contract目录下 Storage.sol
// SPDX-License-Identifier: GPL-3.0 pragma solidity >=0.8.2 <0.9.0; /** * @title Storage * @dev Store & retrieve value in a variable * @custom:dev-run-script ./scripts/deploy_with_ethers.ts */ contract SimpleStorage { constructor () public { } uint256 storedData; function set(uint256 x) public { require(x>10,'number can not less then 10'); storedData = x; } function get() public view returns (uint256) { return storedData; } }
migrate目录下,1_deploy_storaga.js
const SimpleStorage = artifacts.require("SimpleStorage"); module.exports = function(deployer) { deployer.deploy(SimpleStorage); };
test目录,storage_test.js
const BN = require("bn.js"); module.exports = async function (callback) { try { let frac = new BN(200); let SimpleStorage = artifacts.require("SimpleStorage"); let tokenInstance = await SimpleStorage.deployed(); await tokenInstance.set(frac); let data = await tokenInstance.get(); console.log('data =' + JSON.stringify(data)); callback() } catch (e) { callback(e); } };
运行
合约编译
truffle compille
合约迁移
truffle migrate
合约测试
truffle exec .\storgae_test.js
测试结果,获得返回结果 200 的十六进制,c8
Using network 'development'. data ="c8"
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现