Jest(或 Mocha)如何在无需导入的情况下工作?

May*_*hah 3 javascript mocha.js node.js jestjs

几乎我们在 NodeJS 中使用的每个模块都需要以某种方式导入。这些模块提供了我们可以使用的功能。然而,我注意到像 mocha 和 jest 这样的测试框架似乎并没有以同样的方式工作。您只需在 package.json 中的“test”脚本下包含“mocha”或“jest”,它就会完成所有工作。

我很好奇这是如何运作的。我们如何通过在 package.json 中的“scripts”下提及关键字来执行脚本/函数。

如果有人能回答这个问题将会非常有帮助!:)

Tim*_*ong 6

该关键字mocha实际上是一个CLI,就像使用 linux 时的lsand一样。cat

如果您询问如何使用 Node.js 构建 CLI,以下参考资料可能会有所帮助。

如何mocha运作

默认情况下,mocha 会查找 glob“./test/*.js”,因此您可能希望将测试放在 test/ 文件夹中。如果要包含子目录,请传递 --recursive 选项。

参考: https: //mochajs.org/#the-test-directory

  1. 运行mochaCLI。
  2. 程序设置全局变量(例如describeit等)。
  3. 程序加载该test目录下的所有javascript文件。