将 Mocha 测试与源文件放在一起

Keep Mocha tests alongside source files

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

/src/bar/baz/foo.js
/test/bar/baz/foo.spec.js

这会导致像 var foo = require('../../../src/bar/baz/foo') 这样笨拙的 require 语句。而且很难一眼看出哪些源文件缺少测试。我想将我的测试套件与相关源文件放在同一目录中:

/src/bar/baz/foo.js
/src/bar/baz/foo.spec.js

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

我看到过使用 findgulp 来过滤文件列表的建议,但令我惊讶的是,这不能用普通的 Mocha 完成。以这种方式组织文件的推荐方式是什么?

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

mocha "src/**/*.spec.js"

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