Mocha尝试在默认情况下找到测试文件,我如何指定另一个目录,例如服务器-测试?
当前回答
如果你使用的是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测试一样正常运行你的测试
其他回答
如果在node.js中,Mocha v6的一些新配置:
选项1:创建.mocharc。Json在项目的根目录:
{
"spec": "path/to/test/files"
}
选项2:在项目的package.json中添加mocha属性:
{
...
"mocha": {
"spec": "path/to/test/files"
}
}
这里有更多的选择。
这里有一种方法,如果你的测试文件夹中有子文件夹。
/test
/test/server-test
/test/other-test
然后在linux中,你可以使用find命令递归地列出所有*.js文件,并将其传递给mocha:
mocha $(find test -name '*.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
windows中的另一个选项是使用cross-env包,并在package.json中遵循npm脚本
"scripts": {
"test": "cross-env mocha '*.test.js'"
},
"devDependencies": {
"cross-env": "latest",
}
在这种情况下,根文件夹中带有*.test.js模式的所有测试文件将由mocha运行。
编辑:该选项已弃用:https://mochajs.org/#mochaopts
如果仍然希望在命令行上运行mocha,但希望在。/server-tests文件夹而不是。/test文件夹中运行测试,请在。/test/mocha目录下创建一个文件。在文件中只有这个选项:
server-tests
如果你想运行这个文件夹和子目录下的所有内容,把它放到test/mocha.opts中
server-tests
--recursive
摩卡。Opts是通过命令行传入的参数,因此将第一行设置为您想要更改测试的目录,也将从。/test/重定向
推荐文章
- 为什么Visual Studio 2015/2017/2019测试运行器没有发现我的xUnit v2测试
- 单元测试反模式目录
- ReferenceError: description没有定义NodeJs
- 将一个二进制的NodeJS Buffer转换为JavaScript的ArrayBuffer
- 类未找到:IntelliJ中的空测试套件
- AngularJS只适用于单页应用程序吗?
- 如何在vue-cli项目中更改端口号
- Mockito的argumentCaptor的例子
- 同步和异步编程(在node.js中)的区别是什么?
- 如何编辑通过npm安装的节点模块?
- 单元测试:日期时间。现在
- 为什么单元测试中的代码不能找到包资源?
- “node_modules”文件夹应该包含在git存储库中吗
- 从导入的模块中模拟函数
- 在单元测试中设置HttpContext.Current.Session