是否有 .mocha 文件可以在其中指定默认值,例如 --no-colors?
Posted
技术标签:
【中文标题】是否有 .mocha 文件可以在其中指定默认值,例如 --no-colors?【英文标题】:Is there a .mocha file where I can specify defaults such as --no-colors? 【发布时间】:2013-04-03 18:42:39 【问题描述】:我想为 mocha 设置一些默认值,而不必每次都键入它们。 mocha 是否在任何地方寻找配置文件/点文件,就像 jshint 寻找 .jshintrc
而 npm 寻找 package.json
一样?
【问题讨论】:
已接受的答案现已弃用。我建议接受新的 (***.com/a/54804446/1740079) 以防止更多人使用旧方法。 【参考方案1】:是的。您可以创建一个文件./test/mocha.opts
,并在该文件中指定--no-colors
。
有关更多信息,请参阅Mocha Doc 上的 mocha.opts。
【讨论】:
这已被弃用。请参阅@migg 的回答here。【参考方案2】:默认为./test/mocha.opts
。您可以使用--opts
参数传递自定义路径:
mocha --opts ./mocha.opts
如果您不将测试存储在 test/
文件夹中,而是在代码文件旁边,则很有用。
任何名称和扩展名似乎都可以使用,因此如果您希望与.jshintrc
、.babelrc
等配合使用,您甚至可以使用mocha --opts .mocharc
。
【讨论】:
这是(或至少是)一个非常晦涩的功能。我很久以前就对这样的事情放弃了希望,感谢您指出它现在是可能的。 :) 谢谢!测试真的应该在文件旁边。地点很重要! 文件内容可以是JSON吗? 好像不是这样。 CLI 按空格分割内容,然后使用commander
模块对其进行解析。 commander
的解析器需要一个字符串数组。 mocha
来源:github.com/nishigori/mocha/blob/… - commander
来源:github.com/tj/commander.js/blob/…
您可以在脚本中启动 mocha
并传递您的 JSON 文件内容。见:github.com/mochajs/mocha/wiki/…【参考方案3】:
在 mocha 6+ 中,mocha.opts
更改为 legacy
,定义配置的新位置是 .mocharc
文件,该文件可以具有不同的格式(JSON、YAML、JS),如 described in the docs 或 JSON使用mocha
键将配置添加到package.json
。
使用 --config <file>
指定您自己的 mocha 配置路径,但 mocha 使用任何 .mocharc.*
文件作为默认文件,按照文档(JS、YAML、YML、JSON)中描述的顺序,并且还自动使用来自的 mocha
密钥package.json
的优先级低于给定的配置文件。
【讨论】:
这里有一个示例 .mocharc.js 文件:github.com/mochajs/mocha/blob/master/example/config/.mocharc.js(该目录中还有其他格式)。以上是关于是否有 .mocha 文件可以在其中指定默认值,例如 --no-colors?的主要内容,如果未能解决你的问题,请参考以下文章
在 mocha 中,如何在执行另一个测试之前等待异步测试结束?