首页 > 解决方案 > Jest globalSetup 函数

问题描述

我正在尝试使用globalSetupJest 通过以下代码建立我的数据库连接:

import { mongoConnect } from "../../server/services/mongo";

export default async () => {
  console.log('Connecting to DB!\n\n\n')
  await mongoConnect()
}

但是,当我去运行我的代码时,我的每个测试套件都有一个失败的测试,它始终是第一个运行的测试。我假设这是因为每个套件中的第一个测试在数据库连接完成之前开始运行,因此导致测试失败。

无论如何配置 Jest 在开始任何测试之前等待这个导出功能?

标签: typescriptmongodbjestjs

解决方案


通过猫鼬文档

globalSetupglobalTeardown

请勿globalSetup用于调用mongoose.connect()mongoose.createConnection()。Jest 在单独的环境中运行 globalSetup,因此您不能使用您 globalSetup在测试中创建的任何连接。

启动与数据库的猫鼬连接将不起作用globalSetupglobalTeardown


推荐阅读