Mocha尝试在默认情况下找到测试文件,我如何指定另一个目录,例如服务器-测试?


当前回答

现在一天(2020年),你可以使用mocha配置文件来处理这个问题:

步骤1:在应用程序的根位置创建.mocharc.js文件

步骤2:在mocha配置文件中添加以下代码:

'use strict';

module.exports = {
  spec: 'src/app/**/*.test.js'
};

有关配置文件中的更多选项,请参阅此链接:https://github.com/mochajs/mocha/blob/master/example/config/.mocharc.js

其他回答

编辑:该选项已弃用:https://mochajs.org/#mochaopts


如果仍然希望在命令行上运行mocha,但希望在。/server-tests文件夹而不是。/test文件夹中运行测试,请在。/test/mocha目录下创建一个文件。在文件中只有这个选项:

server-tests

如果你想运行这个文件夹和子目录下的所有内容,把它放到test/mocha.opts中

server-tests
--recursive

摩卡。Opts是通过命令行传入的参数,因此将第一行设置为您想要更改测试的目录,也将从。/test/重定向

现在一天(2020年),你可以使用mocha配置文件来处理这个问题:

步骤1:在应用程序的根位置创建.mocharc.js文件

步骤2:在mocha配置文件中添加以下代码:

'use strict';

module.exports = {
  spec: 'src/app/**/*.test.js'
};

有关配置文件中的更多选项,请参阅此链接:https://github.com/mochajs/mocha/blob/master/example/config/.mocharc.js

如果你使用的是nodejs,在你的包中。脚本下的Json

对于全局(-g)安装:"test": "mocha server-test"或"test": "mocha server-test/**/*.js"用于子文档 项目安装:“test”:“node_modules/mocha/bin/mocha server-test”或“test”:“node_modules/mocha/bin/mocha server-test/**/*.js”

然后像npm测试一样正常运行你的测试

对于更改测试目录,这似乎不是任何“简单”的支持。 然而,也许你应该看看这个问题,相对于你的问题。

我在Windows 7上使用node.js v0.10.0和mocha v1.8.2和npm v1.2.14。 我只是想让摩卡使用路径测试/单元来找到我的测试, 在花了很长时间并尝试了几件事之后,

使用"test/unit/*.js"选项在windows上不起作用。 windows shell不像unixen那样展开通配符是有原因的。

但是使用“test/unit”也可以,没有文件模式。 如。“mocha test/unit”会运行test/unit文件夹下的所有文件。

这仍然只运行一个文件夹文件作为测试,但您可以传递多个目录名称作为参数。

此外,要运行单个测试文件,您可以指定完整的路径和文件名。 如。“摩卡测试/单位/ mytest1.js”

我实际上是在包里安装的。NPM Json "脚本":{ “测试”:“摩卡测试/单元” },

所以'npm test'运行我的单元测试。