如何自动检查 Mocha 规范中意外留下的“.only”调用?

use*_*381 4 javascript mocha.js eslint

.only在推送规范更改之前,我偶尔会忘记从 Mocha 规范中删除调用。这样做显然会影响测试覆盖率,这需要解决故障。我希望在推送更改之前捕获这些内容,最好是作为 ESLint 的 linting 过程的一部分,并且花费最少的精力。

Sco*_*pey 5

您正在寻找mocha/no-exclusive-tests规则,插件的一部分eslint-plugin-mocha。如果找到任何describe.only或 ,则会失败it.only。很有用!

来自文档:

该插件需要 ESLint 4.0.0 或更高版本。

npm install --save-dev eslint-plugin-mocha
Run Code Online (Sandbox Code Playgroud)

然后在 eslint 配置中添加对此插件的引用和选定的规则:

{
  "plugins": [
    "mocha"
  ],
  "rules": {
    "mocha/no-exclusive-tests": "error"
  }
}
Run Code Online (Sandbox Code Playgroud)

还有一个mocha/no-skipped-tests如果你也想防止it.skipxit避免被犯下。然而,我发现这.skip有时是有效的,所以我发现最好只是阻止.only

该插件还有大量其他有用的检查,因此请务必阅读他们的文档!