jest config setUp 是否可以对所有beforeAll测试文件运行一次?afterAll
我有一个在测试开始之前设置的数据库连接,当测试完成时我关闭连接,这适用于单个测试文件,但如果我有多个测试文件,与数据库的连接无法关闭,因为其中一个测试文件仍在使用连接,
所以为了澄清我想要一个 globalSetUp abeforeAll在所有测试文件之前运行一次,并afterAll在所有测试完成后运行一次?所以我只能在测试中拥有 1 个数据库连接?package.json 中的笑话设置:
"jest": {
"preset": "ts-jest",
"testEnvironment": "node",
"setupFilesAfterEnv": ["<rootDir>/test/setUpTests.ts"]
},
Run Code Online (Sandbox Code Playgroud)
我试图使用 async wait 来理解 Map 函数中的 Promise.all 但我似乎返回了待处理的 Promise,我不明白为什么
这是当我有 .then 来解决我的承诺时的工作代码
const arr = [1, 2, 3, 4, 5];
const results = Promise.all(arr.map( item => {
return item + 1;
}));
results.then(result=> console.log(result))
Run Code Online (Sandbox Code Playgroud)
按预期记录 = [ 2, 3, 4, 5, 6 ]
现在要使用 async-await 实现该函数,我知道我需要使用关键字 async 将该函数包装在一个异步函数中,并等待 Promise.all
const results = async () => await Promise.all(arr.map(async (item) => {
return item + 1;
}));
console.log(results())
Run Code Online (Sandbox Code Playgroud)
但我似乎总是记录Promise { <pending> }我不明白我做错了什么