无法在摩卡中解析路径

pur*_*om1 26 javascript mocha.js

我目前正在使用Nitrous,这应该不重要,但我需要安装摩卡,所以我键入:

npm install - g mocha.
Run Code Online (Sandbox Code Playgroud)

一切安装,当我尝试在命令行中运行mocha时,我收到以下错误:

/home/action/.parts/lib/node_modules/mocha/bin/_mocha:454
if(!files.length)抛出新错误("无法解析路径(或模式)'"

错误:无法
在runAgain(/home/action/.parts/)
解析lookupFiles(/home/action/.parts/lib/node_modules/mocha/bin/_mocha:454:32)上的路径(或模式)'test/unit' lib/node_modules/mocha/bin/_mocha:305:24
)
在Object的Array.forEach(native)处.(/home/action/.parts/lib/node_modules/mocha/bin/_mocha:304:6)
在Module._compile(module.js:456:26)
处于Object.Module._extensions..js(module.js: 474:10)
在Module.load(module.js:356:32)
的Function.Module._load(module.js:312:12)
在Function.Module.runMain(module.js:497:10)
启动时( node.js:119:16)
node.js:902:3

有谁知道如何解决这个问题?

小智 49

默认情况下,mocha包括./test/*.js.因此,如果这是您的测试所在,只需运行mocha就可以了.

如果你有测试test/unit,你可能想要运行mocha ./test/unit/*.js.


Lou*_*uis 14

您获得的错误与没有命名文件test/unit并执行此操作一致:

$ mocha test/unit
Run Code Online (Sandbox Code Playgroud)

检查文件是否存在.(实际上,没有.js扩展名,我希望有一个目录而不是一个文件.)在发出命令时检查你是否在正确的位置.


Sam*_*rry 7

对于在尝试运行时遇到此错误的任何人:

> npm test 
Run Code Online (Sandbox Code Playgroud)

确保package.json文件包含以下格式的测试脚本:

<project-root>/<custom-path-to-test>/*.js

例如:

{
  "name": "Project Name",
   ...
  "scripts": {
    "test": "mocha ./node/test/*.js"
  }
   ...
}
Run Code Online (Sandbox Code Playgroud)