You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在package.json中配置Mocha命令检测任意深度的测试文件?

解决Mocha无法检测深层目录测试文件的问题

遇到这种深层目录测试文件找不到的情况,主要是shell对glob模式的解析或者Mocha默认遍历规则的限制导致的,你可以试试这两种修改方式:

方法1:添加--recursive参数

直接给Mocha加上递归遍历的参数,配合原有的匹配模式就能覆盖所有层级:

"test": "mocha --require babel-core/register --watch-extensions js --recursive **/*.test.js"

--recursive会让Mocha自动遍历当前目录下的所有子目录,不管层级有多深,再结合**/*.test.js筛选出测试文件,完美适配你多深层结构的需求。

方法2:明确指定根目录的glob路径

有些shell环境(比如Windows默认的CMD)对裸写的**支持不太友好,加上./明确从项目根目录开始递归查找:

"test": "mocha --require babel-core/register --watch-extensions js ./**/*.test.js"

这种方式不需要额外参数,直接通过更精确的glob模式让Mocha定位到所有深度的*.test.js文件。

小提示

如果你的Mocha版本比较老,可能对新的glob模式支持有限,建议升级到最新稳定版,能避免不少路径匹配的坑。

内容的提问来源于stack exchange,提问作者theJuls

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 06:37:11