您要请求功能还是报告错误?
功能/错误
当前的行为是什么?
如果一个库行为不端并且不让进程退出,那么进程会无限期地挂起,尽管所有测试都通过了。 可以说,这些库甚至可能没有行为不端,因为有一些正当的理由不让流程自然结束。
如果当前行为是一个错误,请提供重现的步骤以及通过https://repl.it/languages/jest的 repl.it 演示或 GitHub 上的最小存储库,我们可以yarn install
和yarn test
。
预期的行为是什么?
当所有测试都完成后,Jest 退出该过程,Jest 不再需要测试。
请提供您的确切 Jest 配置并提及您的 Jest、节点、yarn/npm 版本和操作系统。
我认为这无关紧要,但在这里:
这就是--forceExit
的用途,但它是一个逃生舱口。 如果 Jest 没有退出,则意味着您在测试后没有正确清理(使用afterAll
)。
答案并没有解决问题...
@cpojer - 您能否解释一下为什么这被视为逃生舱口,而不是默认行为?
我的期望是调用 Jest 的唯一目的是运行测试。 一旦所有测试块都以一种或另一种方式解决,并且每个after*
块都已处理,那么假设比 Jest 存活的进程应该继续运行的原因是什么?
IMO,这些应该默认被杀死。 如果需要,我们有 after* 进行整洁的清理/关闭,但我敢打赌,大多数情况下,硬退出不会出现任何问题。
最有用的评论
答案并没有解决问题...