我看到 jest 中有两个配置选项,用于在每次测试之前运行一些代码:setupFiles和setupFilesAfterEnv. 在我看来,这setupFilesAfterEnv提供了更多的灵活性(我可以使用jest,beforeEach等等......),所以我不明白在什么情况下setupFiles会更有用。有人可以提供一个您需要使用setupFiles而不是的示例setupFilesAfterEnv吗?
文档:https : //jestjs.io/docs/en/configuration#setupfiles-array
Ste*_*aek 21
我们可以从文档中看到setupFiles和setupFilesAfterEnv之间的区别。
最重要的区别可能是它何时运行。
setupFiles将被执行
在环境中安装测试框架之前。
setupFilesAfterEnv将被执行
在环境中安装测试框架之后。
这就是名称具有 AfterEnv 的原因。
我实际上在我的实际项目中同时使用了它们。
就我而言,我使用setupFiles来设置.env值,并使用setupFilesAfterEnv来设置 jest 配置,例如jest.setTimeout(70000)
>> 就我而言 >>>>>>>>>>>>>>>>>>>>>>>
开玩笑的配置文件
setupFiles: ['<rootDir>/tests/settings/env-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/testSetupFile.js'],
Run Code Online (Sandbox Code Playgroud)
env-setup.ts
import dotenv from 'dotenv';
import path from 'path';
console.log(`============ env-setup Loaded ===========`);
dotenv.config({ path: path.resolve(process.cwd(), 'tests', 'settings', '.test.env') });
Run Code Online (Sandbox Code Playgroud)
测试设置文件.ts
// Some of the `jest` tests are very slow and cause
// timeouts on bitbucket pipeline
console.log(`============ testSetupFile Loaded ===========`);
jest.setTimeout(70000);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8900 次 |
| 最近记录: |