我很难让Mocha像预期的那样工作,我很乐意按照文档记录说,但是(似乎)没有太多关于实际运行的文档.
我已经使用它npm
(全局和本地)安装它,每次运行时我得到:
$ mocha
mocha: command not found
Run Code Online (Sandbox Code Playgroud)
好的,所以我认为它不在我的身上PATH
,所以我试着直接运行它,
$ ./node_modules/mocha/bin/mocha
execvp(): No such file or directory
Run Code Online (Sandbox Code Playgroud)
最后,我试着点击另一个bin
文件,得到了,
$ ./node_modules/mocha/bin/_mocha
path.existsSync is deprecated. It is now called `fs.existsSync`.
.
? 1 tests complete (1ms)
Run Code Online (Sandbox Code Playgroud)
如何使用单个命令执行测试?誓言似乎让你,但我听说摩卡是更好的选择,我似乎无法让它正常工作.
关于我在第三次尝试中遇到的错误的任何想法?
编辑:
我在跑,
Ben*_*nja 167
您不希望您的库测试失败,具体取决于机器设置(mocha为全局,全局mocha版本等),使用跨平台工作的本地mocha的方式是:
npx mocha <args>
Run Code Online (Sandbox Code Playgroud)
npm将别名放在该特殊文件夹的依赖项中的所有二进制文件中.最后,npm会在运行npm脚本时自动将node_modules/.bin添加到PATH,所以在你的package.json中你可以这样做:
node node_modules/.bin/mocha
Run Code Online (Sandbox Code Playgroud)
并用它调用它
"scripts": {
"test": "mocha"
}
Run Code Online (Sandbox Code Playgroud)
Ste*_*ose 18
经过进一步的阅读和上面的Linus G Thiel的确认,我发现我只需要,
./node_modules/.bin
我的PATH
要从终端使用命令运行Mocha ,您需要在计算机上全局安装 mocha:
mocha
this
npm install --global mocha
Run Code Online (Sandbox Code Playgroud)
然后cd
到你的项目文件夹/测试并运行mocha yourTestFileName.js
如果您想
mocha
在您的内部package.json
作为开发依赖项提供:
npm install --save-dev mocha
Run Code Online (Sandbox Code Playgroud)
然后添加mocha
到你的脚本里面package.json
。
"scripts": {
"test": "mocha"
},
Run Code Online (Sandbox Code Playgroud)
npm test
然后在终端内运行。
归档时间: |
|
查看次数: |
93774 次 |
最近记录: |