小编Ali*_*lil的帖子

jest global beforeAll 为所有测试运行一次?

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)

在此输入图像描述

javascript knex.js jestjs

5
推荐指数
0
解决办法
2815
查看次数

异步等待 Promise.all 映射未解析 Promise

我试图使用 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> }我不明白我做错了什么

javascript node.js promise async-await

1
推荐指数
1
解决办法
4239
查看次数

标签 统计

javascript ×2

async-await ×1

jestjs ×1

knex.js ×1

node.js ×1

promise ×1