小编tit*_*ito的帖子

类型错误:测试合约时无法读取未定义的属性(读取“getContractFactory”)

如果不是很清楚,第一个问题对我来说就很简单,但我会尽力而为。

我目前正在通过 YouTube 视频来测试我与安全帽、以太币和华夫饼的合同(https://www.youtube.com/watch?v=oTpmNEYV8iQ&list=PLw-9a9yL-pt3sEhicr6gmuOQdcmWXhCx4&index=6)。

这是合同:

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.9;

import "@openzeppelin/contracts/token/ERC721/ERC721.sol";

contract MyContract is ERC721 {

  constructor(string memory name, string memory symbol) 
    ERC721(name, symbol) {

    }
  
}
Run Code Online (Sandbox Code Playgroud)

这是 test.js:

const { expect } = require('chai');

describe("MyContract", function() {
  
  it("should return correct name", async function() {
    const MyContract = hre.ethers.getContractFactory("MyContract");
    const myContractDeployed = await MyContract.deploy("MyContractName", "MCN");
    await myContractDeployed.deployed();
    
    expect(await myContractDeployed.name()).to.equal("MyContractName");
  });
});
Run Code Online (Sandbox Code Playgroud)

当我在终端中运行“npx Hardhat test”时,它返回:

MyContract
    1) should return correct name


  0 passing (7ms)
  1 failing

  1) …
Run Code Online (Sandbox Code Playgroud)

javascript solidity

8
推荐指数
1
解决办法
1万
查看次数

标签 统计

javascript ×1

solidity ×1