Moh*_*waj 5 javascript node.js jestjs
我正在使用 Jest 来测试我的 rest API。我的大多数 API 端点需要超过 5 秒才能返回,因此我需要增加 Jest 中指定的默认超时 5000 毫秒。
我有 2 个测试文件,假设: foo.test.js bar.test.js
现在,我可以通过以下两种方式摆脱超时错误:
test或it方法的第三个参数。这工作正常,但我需要更新所有现有的测试用例。jest.setTimeout(20000);在我的每个测试文件的顶部添加。这也很好用。但是,它仍然需要我更新所有现有的测试文件。我发现我可以改为jest.setTimeout(20000);在单独的文件中指定,并setupFiles在 package.json 中的 jest 配置选项中指向那个。我这样做了,但是超过 5000 毫秒的超时错误又开始出现了。我的 setupFile 被正确加载,我通过添加一些console.log语句来检查它。但它似乎jest.setTimeout(20000)对测试用例没有任何影响。
从文档中setupFilesAfterEnv:
setupFiles在环境中安装测试框架之前执行
(该信息也应该添加到setupFiles文档部分。)
setupFiles在安装测试框架之前运行。我有点惊讶jest.setTimeout在安装文件中定义。在任何情况下,jest.setTimeout从setupFiles.
相反,使用setupFilesAfterEnvwhich 运行
在环境中安装测试框架后立即
请注意,它setupFilesAfterEnv是在 version24.0.0中引入的。
如果您使用的是较早版本,请Jest改用较旧版本setupTestFrameworkScriptFile。
| 归档时间: |
|
| 查看次数: |
1300 次 |
| 最近记录: |