我是React的新手,仍然在努力理解一些基础知识,如果我的问题看起来很奇怪,很抱歉。
import sth from 'sth';
所以当我们使用Jest时,我们不需要这样做吗:
import { test, expect...} from 'Jest';
y1aodyip1#
正如@nahanil所指出的,Jest将您需要的方法放在NodeJS运行时的全局范围内。如果您在运行jest时将console.log(global)放入文件中,您将看到这些方法被挂接到全局范围内。其他库(如assert)不遵循相同的约定,您需要导入所需的Assert。这种情况发生在这里:https://github.com/facebook/jest/blob/160d27ae9b6728dccf268f8a98351bcf82a7d9e1/packages/jest-environment-node/src/index.ts#L21
console.log(global)
assert
0tdrvxhp2#
如official documentation api 📚中的第一部分所述:在测试文件中,Jest将这些方法和对象中的每一个都放入全局环境中。您不必要求或导入任何内容来使用它们。但是,如果您更喜欢显式导入,则可以从'@jest/globals'导入{describe,expect,test}。
import {describe, expect, test} from '@jest/globals'
2条答案
按热度按时间y1aodyip1#
正如@nahanil所指出的,Jest将您需要的方法放在NodeJS运行时的全局范围内。如果您在运行jest时将
console.log(global)
放入文件中,您将看到这些方法被挂接到全局范围内。其他库(如assert
)不遵循相同的约定,您需要导入所需的Assert。这种情况发生在这里:https://github.com/facebook/jest/blob/160d27ae9b6728dccf268f8a98351bcf82a7d9e1/packages/jest-environment-node/src/index.ts#L21
0tdrvxhp2#
如official documentation api 📚中的第一部分所述:
在测试文件中,Jest将这些方法和对象中的每一个都放入全局环境中。您不必要求或导入任何内容来使用它们。但是,如果您更喜欢显式导入,则可以从'@jest/globals'导入{describe,expect,test}。