Los contratos inteligentes se desarrollan y prueban utilizando hardhat (MAC)

En línea: http://remix.ethereum.org

Construir un entorno de desarrollo local

1. Dirección del sitio web oficial de instalación de Node.js: https://nodejs.org/en/

Después de descargar e instalar, todo el camino hasta el siguiente está bien

Abra la terminal e ingrese node -v, npm -v para probar si la instalación es exitosa

2. La dirección del sitio web oficial de la instalación del código vs: https://code.visualstudio.com

Después de descargar e instalar, continúe instalando los dos complementos

enchufar

3. Cree una carpeta de desarrollo mkdir test, cambie el terminal a esta ubicación cd test

4. Inicialice el proyecto npm, npm init presione enter, presione enter hasta el final

inicio npm

5, Instalar casco, npm install --save-dev cascoinstalar casco

6. Inicialice el casco, presione Entrar para npx hardhat init, elija crear un proyecto js y presione Entrar

Inicializar casco

7. Instale el navegador Firefox y descargue el complemento metamask

8. Implemente contratos simples y escriba casos de prueba

prueba/contratos/HolaMundo.sol

// SPDX-License-Identifier:GPL-3.0
pragma solidity ^0.8.9;

contract HelloWorld{
    string _h="hello world!";
    function getHi()public view returns(string memory){
        return _h;
    }
}

prueba/prueba/hw.js

const { expect } = require('chai');
const { BN, expectEvent, expectRevert } = require('@openzeppelin/test-helpers');

const HW = artifacts.require('HelloWorld');

contract("HelloWorld", function ([alice, bob, carol, david, erin]) {

    let hw;
    let result;

    before(async function () {
        hw = await HW.new({ from: alice });
        console.log("contract address:",HW,"alice",alice);
      });

    describe("测试", function () {
        it("getHi", async function () {
            result=await hw.getHi();
            console.log("hi:", result.toString());
        });
    });
});

prueba/harhat.config.js

require("@nomicfoundation/hardhat-toolbox");
require("@nomiclabs/hardhat-truffle5");
module.exports = {
  solidity: "0.8.17",
  hardhat: {
    accounts: {
      count: 5,
    }
  },
  test: {
    url: 'http://127.0.0.1:8545',
    accounts: [`私钥`],
    gasPrice: 5 * 10 ** 9
    }
};

comando terminal

npm i
npm install --save-dev @openzeppelin/test-helpers
npm install --save-dev @nomiclabs/hardhat-truffle5
npm install --save-dev "@nomiclabs/hardhat-web3@^2.0.0"
npx hardhat test/hw.js

9. Ejecución de resultados

resultado de la operación

10. Estructura de archivos (Lock es un archivo que se genera automáticamente cuando se crea)

estructura de archivos

Supongo que te gusta

Origin blog.csdn.net/qq_37575994/article/details/127384163
Recomendado
Clasificación