【发布时间】:2021-07-03 22:16:17
【问题描述】:
在使用 Jest 进行测试时,我收到一条警告,提示“工作进程未能正常退出并被强制退出。这可能是由于不正确的拆卸导致测试泄漏造成的。尝试使用 --detectOpenHandles 运行以查找泄漏。”我意识到这是因为在我使用 Bull https://github.com/OptimalBits/bull 的函数之一内部使用了 Redis。因此,将任务添加到队列时会导致此警告。我使用默认的 Bull 配置(无配置)。我确实有一个 Jest 使用的队列上的 add 函数的模型,但是它没有帮助。
const notificationQueue = {
add: jest.fn().mockImplementation((data: any, opts?: JobOptions) => {}),
};
我想知道是否有办法避免此警告。如果它有助于我在内存中使用 mongo 进行测试,但 redis 是一个实际的。附带说明一下,当我单独运行每个测试套件时,我没有看到此警告,只有在我运行所有测试时才看到。
【问题讨论】:
标签: node.js testing redis jestjs bull