Jest提供了一些在测试之前执行某些操作的有用方法:beforeEach()
和beforeAll()
。 Jest docs on setup
这些问题是它们只能放在describe
块内。因此,如果我有许多文件,每个文件都有自己的描述块,我需要在每个文件中放置beforeEach()
。
如何在&之前运行一些代码?每次测试后,只添加一次(而不是在每个描述块中添加)?
答案 0 :(得分:1)
您可以尝试globalSetup
Jest配置密钥。它是一个可选键,可用于在所有测试套件之前运行一次异步函数。
请参阅https://github.com/facebook/jest/blob/master/docs/Configuration.md#globalsetup-string
在globalSetup
中设置package.json
的示例:
jest: {
globalSetup: "./path-to-global-setup.js"
}
...或jest.config.js
:
module.exports = {
globalSetup: "./path-to-global-setup.js"
};
global-setup.js
文件的示例:
module.exports = async function() {
// do something
};
运行测试套件时,babel
将 转换此文件。