当前位置: 首页 > 面试题库 >

如何安装和运行Mocha(Node.js测试模块)?安装后出现“ mocha:找不到命令”

越安翔
2023-03-14
问题内容

我在使Mocha正常工作方面遇到困难,并且我很乐意按照文档所述进行操作,但实际上并没有太多的文档说明。

我已经使用npm(全局和本地)安装了它,每次运行它都会得到:

$ mocha
mocha: command not found

好的,所以我发现它不在我的PATH,所以我尝试直接运行它,

$ ./node_modules/mocha/bin/mocha 
execvp(): No such file or directory

最后,我尝试打另一个bin文件,然后得到

$ ./node_modules/mocha/bin/_mocha 
path.existsSync is deprecated. It is now called `fs.existsSync`.

  .

  ✔ 1 tests complete (1ms)

如何只用一个命令执行测试?Vows似乎允许您,但是我听说Mocha是更好的选择,我似乎无法使其正常工作。

对我在第三次尝试中遇到的错误有任何想法吗?

编辑:

我在跑,

  • Ubuntu 11.10 64位
  • Node.js 0.7.5
  • npm 1.1.8
  • Mocha 0.14.1
  • 应该0.6.0

问题答案:

从npm 5.2.0开始,如果您运行以下命令,npm附带有一个新命令“ npx”,它使此操作变得更加简单:

npx mocha <args>

注意:可选参数会转发到正在执行的命令(在这种情况下为mocha)

这将自动从本地安装的mocha中选择可执行的“ mocha”命令(始终将其添加为dev依赖项,以确保您和其他所有人始终使用正确的mocha命令)。

请注意,如果您未安装mocha,此命令将自动获取并使用最新版本,这对于某些工具(例如脚手架)非常有用,但对于某些您可能想要依赖的依赖项可能不是最可取的固定到特定版本。

您可以在此处阅读有关npx的更多信息

现在,如果要定义一个自定义的npm脚本,而不是直接调用mocha,则是一个别名,它可能会调用其他npm二进制文件…

您不希望库测试根据机器设置而失败(将Mocha作为全局,全局Mocha版本等),使用跨平台工作的本地Mocha的方法是:

node node_modules/.bin/mocha

npm为该特殊文件夹上的依赖项中的所有二进制文件添加别名。最后,npm将在运行npm脚本时自动将node_modules /.bin添加到PATH中,因此在package.json中,您可以执行以下操作:

"scripts": {
  "test": "mocha"
}

并用

npm test


 类似资料:
  • 问题内容: 我只有很少的节点包可以在node.js环境和浏览器中使用。现在,我有两个单独的测试(针对每个环境)。用just 命令运行这些测试的最佳方法是什么?我也想将这些包添加到travis。 我正在使用和。 节点测试命令 浏览器测试命令 我试过的 将这些命令添加到以分号分隔的脚本中 问题: 当第一个脚本中有错误但第二个脚本中没有错误时,命令以0退出,并通过了travis build。 让node

  • 问题内容: 执行时似乎得到以下提示 不幸的是,执行任何Bower命令都会返回 返回和运行返回。 问题答案: 我假设您是通过Homebrew安装Node.js的,它烦人地将已安装的npm二进制文件放在通常不在用户路径中的位置。您要做的就是添加到$ PATH中。您可以通过将其添加到.bashrc / .bash_profile / .zshrc文件中来实现。 尽管我宁愿卸载Homebrew安装的Nod

  • 问题内容: 我正在尝试以交互方式运行。 我要使用它,我遵循了他们的指示: 我成功跑了 我跑了导致 一些更多的信息: 返回: 返回: 运行不返回任何输出 运行收益: 问题答案: 您需要将GOPATH / bin添加到PATH。 更新 :从Go1.8开始,如果未设置GOPATH,则默认为。如果未明确设置GOPATH,则以上操作 将无效 。 要同时设置两者,请将其添加到您的.profile中:

  • 问题内容: 我想将文件上传到s3,所以我想从本文运行上传程序:http : //www.componentix.com/blog/9 为此,我需要安装多部分模块。 https://github.com/isaacs/multipart- js 但是通过做npm install multipart它给出了错误 我应该如何安装此多部分模块,以便使该程序运行? 问题答案: 从https://github

  • 我正在尝试从github安装Exscript。 当我试图加载它时,python找不到它: 但是,当我尝试用setup在同一个虚拟环境中安装它时。py它成功安装并加载。 我做错了什么?

  • 我不能使用NodeJS中的命令提示符来使用。运行时出现以下错误: