【发布时间】:2020-01-22 08:10:53
【问题描述】:
根据文档,可以使用jest-object 将默认异步超时从 5000 毫秒增加到 5000 毫秒
更具体地说,通过使用jestsettimeouttimeout
我面临的问题是我正在针对一个非常慢的 API 运行一系列测试,响应时间为 5-15 秒,在每个测试的顶部配置这个玩笑对象非常烦人。
是否可以在运行所有测试文件之前声明一次这些设置?
【问题讨论】:
根据文档,可以使用jest-object 将默认异步超时从 5000 毫秒增加到 5000 毫秒
更具体地说,通过使用jestsettimeouttimeout
我面临的问题是我正在针对一个非常慢的 API 运行一系列测试,响应时间为 5-15 秒,在每个测试的顶部配置这个玩笑对象非常烦人。
是否可以在运行所有测试文件之前声明一次这些设置?
【问题讨论】:
好的,把位放在一起:
当您搜索时,Jest 搜索框实际上不会返回任何内容:setupFilesAfterEnv
还有文档讨论:setupTestFrameworkScriptFile(它也不会在搜索中返回任何内容:/)
不管怎样,文档让你摸不着头脑,但这是可行的:
jest.config.js:
module.exports = {
setupFilesAfterEnv: ['./setup.js'],
setup.js:
jest.setTimeout(10000); // in milliseconds
开玩笑的人应该更容易找到这些信息。
【讨论】:
testTimeout 的新配置选项,它会做同样的事情。 :)
Jest 提供了一个testTimeout 配置选项,您可以将其添加到您的package.json:
"jest": {
"testTimeout": 15000,
}
【讨论】:
创建一个文件jest.config.js,然后添加以下内容:
module.exports = {
testTimeout: 60000 // one minute timeout for all tests
}
【讨论】:
如果您正在使用react 并使用create-react-app 初始化您的应用程序,那么在您的src/ 目录下您应该有一个名为setupTests.js 的文件。在这里,您只需在 @testing-libary 的导入语句之后插入这一行,即可为所有测试设置全局超时
jest.setTimeout(15000); // in milliseconds
【讨论】: