【发布时间】:2022-08-20 01:26:06
【问题描述】:
我正在我的 NodeJS api 上运行 jest 单元和集成测试,我面临一些可能存在内存泄漏的问题。 我尝试将 Jest 从 26.3.2 升级到 27.5.1,但这并没有太大帮助。 我从 chrome 控制台拍摄了一些堆快照。
快照 2
快照 4
从上面的快照我可以看到使用量的增加非常高。但我无法理解出了什么问题。
我看到 String、Object 和 JSBufferData 出现了问题。但不确定是什么问题。
库的字符串化版本的多个调用/行,但是这是从哪里来的,为什么?
在对象的情况下:
屏幕截图中的对象可能来自我使用countries-list 的库,这是为了获取国家/地区列表以查找 ISO 名称。
最后是 JSBufferData,它指向类似 URLSearchParam 的东西,但我没有在我的应用程序的任何地方使用上述任何对象/库:
我使用的堆栈:
节点JS:16.14.2 开玩笑:27.5.1 jest-searial-runner:1.2.0
-
你在哪里以及如何加载你的对象?看起来你正在使用包
xlsx;您正在加载文件进行测试吗?文件引用是否在测试中保留?
标签: testing jestjs memory-leaks out-of-memory