将Mocha测试与源文件一起保存

Tam*_*lyn 11 unit-testing mocha.js node.js

我目前有我的NodeJS源文件src和测试套件test,例如:

/src/bar/baz/foo.js
/test/bar/baz/foo.spec.js
Run Code Online (Sandbox Code Playgroud)

这导致尴尬的需求声明,如var foo = require('../../../src/bar/baz/foo').而且很难一目了然地看到哪些源文件缺少测试.我想将测试套件保存在与相关源文件相同的目录中:

/src/bar/baz/foo.js
/src/bar/baz/foo.spec.js
Run Code Online (Sandbox Code Playgroud)

但是现在运行mocha --recursive src导致错误,因为Mocha试图将我的源文件作为测试运行.

我已经看到了使用findgulp过滤文件列表的建议,但我发现令人惊讶的是,用普通的Mocha无法做到这一点.以这种方式组织文件的推荐方法是什么?

Rod*_*ros 15

只需将测试文件的模式传递给mocha,如:

mocha "src/**/*.spec.js"
Run Code Online (Sandbox Code Playgroud)

这将运行.spec.js所有子目录中的文件src.