关于node.js:Nodejs和Jest单元测试无法正常退出的问题

36次阅读

共计 326 个字符,预计需要花费 1 分钟才能阅读完成。

最近在编写 Nodejs/Jest 单元测试时呈现利用无奈失常退出,明明单元测试曾经执行结束,然而利用就是卡住,无奈失常退出, 导致单元测试无奈间断执行。因为利用较为简单,很难以排查是什么起因导致的,通过剖析起因次要如下:

  1. 未解决 async/Promise 会导致该起因,解决办法是在 jest 中增加 --detectOpenHandles 参数,增加该参数后,在运行时 jest 会检测并给出提醒,依此解决就能够。
  2. 还有一种状况是利用中存在未清理的 setInterval 也会导致此状况,这种状况比拟荫蔽。解决办法也很简略, 能够本人编写一个 setSafeInterval 函数,替换一个利用中所有应用 setInterval 的中央,记录一下定时器句柄,在退出前清理一下就能够了。
正文完
 0