我无法让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似乎让你,但我听说摩卡是更好的选择,我似乎无法让它正常工作。
关于我在第三次尝试时遇到的错误的任何想法?
修改
我正在跑步,
答案 0 :(得分:161)
您不希望您的库测试失败,具体取决于机器设置(mocha为全局,全球mocha版本等),使用跨平台工作的本地mocha的方式是:
node node_modules/.bin/mocha
npm将别名放在该特殊文件夹的依赖项中的所有二进制文件中。 最后,npm会在运行npm脚本时自动将node_modules / .bin添加到PATH中,所以在你的package.json中你可以这样做:
"scripts": {
"test": "mocha"
}
并使用
调用它npm test
答案 1 :(得分:18)
经过进一步阅读和上述Linus G Thiel的确认后,我发现我必须这样做,
./node_modules/.bin
添加到我的PATH
答案 2 :(得分:0)
对于Windows:
Package.json
"scripts": {
"start": "nodemon app.js",
"test": "mocha"
},
然后运行命令
npm run test
答案 3 :(得分:0)
在为mocha安装节点模块时,我尝试了以下命令
在运行或执行我正在尝试的摩卡测试
但是我得到以下错误:
“ Mocha”未被识别为内部或外部命令
因此,尝试了所有方法之后,只需将系统变量下的环境变量路径设置为:
C:\ Program Files \ nodejs \
它起作用了:)
答案 4 :(得分:0)
要在您的终端上使用
cars.forEach(car -> System.out.println(car.getName() + " - " + car.getNumbers().size()));
命令运行 Mocha ,您需要在import java.util.stream.Collectors; import static java.util.stream.Collectors.counting; import static java.util.stream.Collectors.groupingBy; Collection<Car> cars = ...// your cars final Map<String, Long> grouped = cars.stream() .collect(groupingBy(car -> car.getName(), counting())); System.out.println(grouped);
计算机上全局安装Mocha:
mocha
然后this
到您的 projectFolder / test 并运行npm install --global mocha
如果您想将
cd
内部的mocha yourTestFileName.js
用作开发依赖项,则:
mocha
然后将package.json
添加到npm install --save-dev mocha
中的脚本中。
mocha
然后在您的终端中运行package.json
。