为所有测试配置一次笑话超时

Configure jest timeout once for all tests

根据文档,可以使用 jest-object

将默认异步超时从 5000 毫秒增加

更具体地说,通过使用 jestsettimeouttimeout

我面临的问题是我正在 运行针对非常慢的 API 进行一系列测试,响应时间为 5-15 秒,在每次测试都非常烦人。

是否可以在所有测试文件运行之前声明一次这些设置?

好的,将位放在一起:

当您搜索 setupFilesAfterEnv

时,Jest 搜索框实际上 return 没有任何内容

并且文档讨论了:setupTestFrameworkScriptFile(在搜索中也没有 return 任何内容:/)

无论如何,这些文档让您摸不着头脑,但这行得通:

jest.config.js:

module.exports = {
  setupFilesAfterEnv: ['./setup.js'],

setup.js:

jest.setTimeout(10000); // in milliseconds

开玩笑的人应该让这些信息更容易找到。

如果您正在使用 react 并使用 create-react-app 初始化您的应用程序,那么在您的 src/ 目录下您应该有一个名为 setupTests.js 的文件。在这里,您可以为所有测试设置全局超时,只需在 @testing-libary

的导入语句之后插入此行
jest.setTimeout(15000); // in milliseconds

Jest 提供了一个 testTimeout 配置选项,您可以将其添加到 package.json:

  "jest": {
    "testTimeout": 15000,
  }

使用testTimeout。在您的jest.config.js(或类似的)中,添加以下内容:

export SECONDS = 1000;

module.exports = {
  testTimeout: 60 * SECONDS
}