debugging 在WebStorm中调试安全帽可靠性测试

oalqel3c  于 2023-04-21  发布在  Storm
关注(0)|答案(3)|浏览(184)

在使用npx hardhat test在控制台中运行Hardhat测试后,我决定能够设置断点将有助于我更快地迭代。
如何让Webstorm运行npx hardhat test启动的底层函数,以便使用内置的调试器?

hkmswyz6

hkmswyz61#

后来我发现安全帽在引擎盖下运行摩卡咖啡。
要在WebStorm中进行调试,您可以:
1.删除现有配置
1.创建一个新的mocha配置
1.在“节点选项”中设置任何配置。注意:因为我分叉了主网,所以测试开始需要一段时间,所以我添加了--timeout 10000,因为mocha的默认超时只有2000ms
1.选择mocha包,默认情况下WebStorm不选择它
1.设置测试文件模式
1.将const {ethers} = require('hardhat');添加到测试文件中,因为它在运行时不再由hardhat注入。
1.如果绿色的调试图标没有出现,我就成功地关闭并重新打开了WebStorm。
此时,我可以在测试文件中成功设置断点,但在MyContract.sol文件中无法设置断点,这并不奇怪,因为合约是在运行之前编译的。

wlsrxk51

wlsrxk512#

1.创建或打开Hardhat项目的package.json文件。
1.添加一个test NPM运行脚本并保存文件。您的package.json应该看起来像这样。

{
  "name": "hardhat-project",
  "scripts": {
    "test": "hardhat test"
  },
  "devDependencies": {
    "@nomiclabs/hardhat-ethers": "2.0.2",
    "@nomiclabs/hardhat-waffle": "2.0.1",
    "chai": "4.3.4",
    "ethereum-waffle": "3.4.0",
    "ethers": "5.4.4",
    "hardhat": "2.6.0"
  }
}

1.在编辑器窗格的左侧槽中,应该会出现一个小的播放图标,单击它,然后单击Debug "test"
我在这里更详细地介绍了说明,但这是大致的想法。

hrysbysz

hrysbysz3#

如果你使用的是typescript,你需要导入**ts-mocha**而不是 mocha

相关问题