使用Web3智能合约时,Mocha测试在完成后会挂起

时间:2018-11-20 07:57:58

标签: node.js mocha smartcontracts web3 web3js

我为与以太坊智能合约兼容(因此将合约状态用作数据存储)的节点应用编写了一些集成测试。我正在使用web3实例化一些智能合约接口,并在测试的断言部分中使用它们来检查是否已将有效信息写入到区块链中。

但是,通过测试后,mocha进程仍在运行,我必须手动将其关闭。我怀疑发生这种情况是因为智能合约接口基本上是开放的连接,而它们不是封闭的,我知道当您对普通数据库连接执行相同操作时会发生这种情况(请参见Mocha hangs after execution when connecting with Mongoose)。

我没有找到任何disconnect或类似的web3 api方法,有人对此有类似的经验吗?

1 个答案:

答案 0 :(得分:0)

有人指出我有一个--exit标志,可以将其传递给mocha,它会在所有测试完成运行后终止进程,这可能是目前足够好的解决方案。