Mocha & Typescript 和递归加载



使用此脚本:

"test": "./node_modules/mocha/bin/mocha --recursive --require ts-node/register ./test/**/*.spec.ts --opts ./test/mocha.opts",

我尝试在树中加载一些测试文件:

.
├── controllers
│   ├── admin
│   │   └── users.spec.ts
│   ├── authentications.spec.ts

但是,users.spec.ts测试文件不会加载,但authentications.spec.ts会加载。

我的 mocha.opts 文件看起来像:

--timeout 5000

我也尝试删除--recursive标志,只有一个球,但它不起作用。

我无法确定问题出在ts-node还是mocha

?有什么想法吗?

看起来你也在这里问了这个问题,并得到了一个很好的答案:引用 glob 参数,以便它被 mocha 扩展(递归),而不是由 shell(非递归):

"test": "mocha --require ts-node/register 'test/**/*.spec.ts' --opts ./test/mocha.opts"

这里似乎确实存在一个错误,无论是在摩卡对--recursive的处理中,还是与我不知道ts-node的一些互动。

您可以通过告诉 mocha 使用以下命令专门查找嵌套更深的文件夹来解决此问题:

mocha --recursive --require ts-node/register ./test/**/*.spec.ts ./test/**/**/*.spec.ts --opts ./test/mocha.opts

例如,告诉它专门查找子(/**/)和孙(/**/**/)目录。

对我来说,问题实际上是我在测试中only

最新更新