我一直在努力解决运行jest时出现的明显内存泄漏问题,详见此处:https://github.com/facebook/jest/issues/7874
我想直接给jest分配大量堆空间,这样尽管存在内存泄漏,我的测试也能顺利完成。然而,使用以下命令行:
node --max-old-space-size=8192 --expose-gc ./node_modules/.bin/jest --no-cache --runInBand --logHeapUsage
当堆使用量达到大约1500MB时,我仍然会收到“Javascript堆内存不足”的错误信息。如果我运行:
node --max-old-space-size=8192
然后执行:
> v8.getHeapStatistics()
{
...
heap_size_limit: 8640266240
...
}
很明显我能够影响Node的堆大小,但是它却不会影响Jest。
Node版本: 16.13.0 Jest版本: 27.4.4 有什么想法吗?