为什么在使用Jest时无需导入某些内容?

时间:2019-04-20 12:50:19

标签: reactjs jestjs

我是React的新手,仍在努力了解一些基础知识,如果我的问题似乎很奇怪,请对不起。我们知道我们需要将模块导入为

import sth from 'sth';

因此,当我们使用Jest时,不需要这样做:

import { test, expect...} from 'Jest';

1 个答案:

答案 0 :(得分:1)

正如@nahanil指出的那样,Jest将所需的方法放在NodeJS运行时的全局范围内。如果在运行jest时在文件中放入console.log(global),则会看到这些方法已挂接到全局作用域上。其他库(例如assert)没有遵循相同的约定,因此您将需要导入所需的断言。

在这里发生: https://github.com/facebook/jest/blob/160d27ae9b6728dccf268f8a98351bcf82a7d9e1/packages/jest-environment-node/src/index.ts#L21