Mocha尝试在默认情况下找到测试文件,我如何指定另一个目录,例如服务器-测试?
当前回答
这样做的好方法是在包中添加一个“test”npm脚本。Json,使用正确的参数调用mocha。这边您的包裹。Json还描述了测试结构。它还避免了其他答案中的所有这些跨平台问题(双引号vs单引号,“查找”等)。
让mocha运行"test"目录下的所有js文件:
"scripts": {
"start": "node ./bin/www", -- not required for tests, just here for context
"test": "mocha test/**/*.js"
},
然后,要只运行烟雾测试,请调用:
npm test
你可以通过这种方式标准化所有项目中所有测试的运行,这样当一个新的开发人员开始你的项目或其他项目时,他们知道“npm test”将运行测试。这在历史上有很好的先例(例如,Maven也是大多数老式的“make”项目)。当所有项目都有相同的测试命令时,它肯定有助于CI。
类似地,您可能有一个快速“烟雾”测试的子集,您可能希望mocha运行:
"scripts": {
"test": "mocha test/**/*.js"
"smoketest": "mocha smoketest/**/*.js"
},
然后,要只运行烟雾测试,请调用:
npm smoketest
另一种常见的模式是将测试放在与它们测试的源文件相同的目录中,但是将测试文件称为*.spec.js。例如:src/foo/foo.js通过src/foo/foo.spec.js进行测试。
按照约定运行所有命名为*.spec.js的测试:
"scripts": {
"test": "mocha **/*.spec.js"
},
然后运行所有测试调用:
npm test
看到这里的模式了吗?好。:)一致性打败了村。
其他回答
我刚刚遇到了这个问题,并通过删除——recursive选项(我已经设置了)并使用上面建议的相同结构来解决它:
mochify “test/unit/**/*.js”
这为我运行了/test/unit/下所有目录下的所有测试,而忽略了/test/下的其他目录
对于更改测试目录,这似乎不是任何“简单”的支持。 然而,也许你应该看看这个问题,相对于你的问题。
这样做的好方法是在包中添加一个“test”npm脚本。Json,使用正确的参数调用mocha。这边您的包裹。Json还描述了测试结构。它还避免了其他答案中的所有这些跨平台问题(双引号vs单引号,“查找”等)。
让mocha运行"test"目录下的所有js文件:
"scripts": {
"start": "node ./bin/www", -- not required for tests, just here for context
"test": "mocha test/**/*.js"
},
然后,要只运行烟雾测试,请调用:
npm test
你可以通过这种方式标准化所有项目中所有测试的运行,这样当一个新的开发人员开始你的项目或其他项目时,他们知道“npm test”将运行测试。这在历史上有很好的先例(例如,Maven也是大多数老式的“make”项目)。当所有项目都有相同的测试命令时,它肯定有助于CI。
类似地,您可能有一个快速“烟雾”测试的子集,您可能希望mocha运行:
"scripts": {
"test": "mocha test/**/*.js"
"smoketest": "mocha smoketest/**/*.js"
},
然后,要只运行烟雾测试,请调用:
npm smoketest
另一种常见的模式是将测试放在与它们测试的源文件相同的目录中,但是将测试文件称为*.spec.js。例如:src/foo/foo.js通过src/foo/foo.spec.js进行测试。
按照约定运行所有命名为*.spec.js的测试:
"scripts": {
"test": "mocha **/*.spec.js"
},
然后运行所有测试调用:
npm test
看到这里的模式了吗?好。:)一致性打败了村。
用这个:
mocha server-test
或者如果你有子目录,使用这个:
mocha "server-test/**/*.js"
注意双引号的使用。如果省略它们,则可能无法在子目录中运行测试。
现在一天(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
推荐文章
- 在Visual Studio 2017中未发现单元测试
- 检查已安装的angular-cli版本?
- 如何将Blob转换为JavaScript文件
- 如何用Express/Node以编程方式发送404响应?
- 什么是单元测试?
- 如何安装包从github回购在纱线
- 什么时候.then(success, fail)被认为是承诺的反模式?
- 自动HTTPS连接/重定向使用node.js/express
- 在nodejs http中body在哪里。得到回应?
- 如何在猫鼬排序?
- Java:如何测试调用System.exit()的方法?
- Nodemon错误:“已达到文件监视器数量的系统限制”
- 如何在ASP中使用ILogger进行单元测试。网络核心
- 如何使webpack开发服务器运行在端口80和0.0.0.0使其公开访问?
- 如何在node.js模块中访问和测试内部(非导出)函数?