Jest错误:'jest'不被识别为内部或外部命令,可执行程序或批处理文件。

37

我已经在我的React项目中安装了Jest。 我甚至安装了jest-cli,但仍无法在命令行中使用Jest。 我可以通过npm test进行测试,因为它在我的package.json中,但我在测试时遇到了一些问题,为了解决这个问题,我需要使用'jest'命令。( 我需要运行jest --init来创建配置文件。)提前致谢!

请查看入门指南-Jest

6个回答

65

尝试将jest安装为开发依赖。
npm install --save-dev jest

然后用npm test来运行它,(如果需要添加脚本,请编辑package.json文件)。不要直接使用jest命令,这不是推荐的做法。
如果你想使用jest命令,请使用node_modules/.bin/jest


2
这是我安装它的方式。我想使用jest命令,因为我在官方网站上查看了设置它的说明(jest --init)。但当我输入node_modules/.bin/jest时,它仍然无法运行。它显示“node_modules不是内部或外部命令,也不是可运行的程序或批处理文件。” - Gergan Zhekov
1
如果您使用的是Windows系统,则路径为node_modules\.bin\jest.exe或类似的路径。 - Janaka Chathuranga
如果jest不在/node/modules/.bin中,尝试重新安装,使用这个答案帖子,再次运行此命令解决了我的问题。 - Ali Sherafat

44

只有在全局安装jest后,我才解决了这个问题:

npm install -g jest

至今仍然有效 - undefined

9

如果您使用的是Windows,可以使用"node_modules\.bin\jest" --init来初始化 Jest。


1

当我以管理员身份(右键CMD并以管理员身份运行)使用以下命令全局安装时,问题得到了解决。

npm install -g jest

然后进入测试文件并对其进行 Jest 测试。


0
使用 npx 来解决 "jest: command not found" 错误,例如 npx jest 或者通过运行 npm install -g jest 全局安装该包,以便在不需要 npx 前缀的情况下使用该命令。

0
我在我的Node.js项目中遇到了同样的问题。我进行了一番调查,发现我的yarn.lock和package-lock.json文件不同步。可能是我在使用yarn处理其他事情时,错误地使用了npm添加包。所以当我在新系统上开始工作时,devDependencies中缺少了jest包。我运行了yarn命令,但是jest并没有被安装。 在有人开始指责我们应该只有一个锁定文件之前,我已经意识到了这一点,这只是一个小错误。

根据目前的写法,你的回答不够清晰。请编辑以添加更多细节,帮助其他人理解这如何回答所提出的问题。你可以在帮助中心找到关于如何撰写好回答的更多信息。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接