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

标签 javascript node.js mocha.js jestjs

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

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

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

最佳答案

关键字mocha 实际上是一个CLI ,就像 lscat 如果你使用 linux。

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

mocha 的工作原理

By default, mocha looks for the glob "./test/*.js", so you may want to put your tests in test/ folder. If you want to include subdirectories, pass the --recursive option.

Reference: https://mochajs.org/#the-test-directory

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

关于javascript - Jest(或 Mocha)如何在无需导入的情况下工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56099330/

相关文章:

javascript - 我可以通过不在每次需要访问元素时都调用 jQuery 来节省开销吗?

php - 如何使用 smarty 从 CDN 源包含 javascript

javascript - socket.io 聊天示例 -sails.js

javascript - 动态设置图表高度

javascript - 如何将 Mocha 测试文件与 Webpack 流程集成?

javascript - 如何在单元测试环境中模拟 browserHistory?

javascript - ko jquery自动完成自定义绑定(bind)覆盖以前的绑定(bind)

node.js - 使用 Mongoose 从 Node 的 MongoDB 中的复杂嵌入式集合中插入、更新和删除

javascript - Mocha如何将 Node Controller 功能公开给测试脚本

javascript - 默认添加 babel-polyfill 吗?