ESLint 如何在 Jest 中使用

引言

ESLint 是在 JavaScript 项目中保持代码一致性和避免语法错误的工具之一。Jest 是一个流行的 JavaScript 测试库,用于开发和测试 JavaScript 代码。本文将介绍如何在 Jest 中使用 ESLint 工具,并提供详细的指导和示例代码。

配置 Jest 使用 ESLint

  1. 安装相应的包 要使用 ESLint 工具在 Jest 中进行代码检查,需要安装以下两个 npm 包:
  • eslint
  • eslint-plugin-jest

可以使用以下命令行以便安装:

--- ------- ------ ------------------ ----------
  1. 添加 ESLint 配置文件 在项目的根目录中添加 .eslintrc.js 文件,并在其中定义一些规则。例如,
-------------- - -
  -------- ---------
  -------- ---------------------- ---------------------------
  ---- -
    -------- -----
    ----- -----
    ---- -----
    ----- ----
  --
  -------------- -
    ------------ -----
    ----------- --------
  --
  ------ -
    ------------- ------
    ----------------- -------
    ------------------------- -------
    ------------------------ -------
    -------------------------- -------
    ----------------------------- -------
    -------------------- ------
  -
-

在这里定义了一些规则,包括:

  • 使用 eslint:recommended 和 plugin:jest/recommended,扩展了 ESLint 的内置配置。
  • 将浏览器、node、es6 和 jest 的环境标识为 true。
  • 使用语法版本为 ECMAScript 2018 并将代码视为模块。
  • 定义了一些规则,包括禁止使用 console、警告未使用的变量等。
  1. 在 Jest 配置文件中设置 linting 在 Jest 的配置文件中添加以下内容:
-------------- - -
  -- ---
  ------------- ---------
  --------------- -
    ---------- ---------------------- --------------------------
  --
  ---------- -
    --------- ----
  -
  -----
-

这将Jest的配置与 ESLint 相关联,并使 Jest 能够使用的全局变量,如 expect。

在 Jest 中使用 ESLint

  1. 测试文件中添加注释 在 Jest 的测试文件中添加 ESLint 注释是一个比较好的做法。例如,将以下注释添加到一个测试中:
-- ------------------------ --------
---------- ----- -- -- -
  ------------------
---

这将为 test() 函数禁用未定义的变量错误,因为 test() 函数未定义在该文件中,而是在全局作用域中。同样,可以为其他需要的全局变量添加类似的注释,例如 window 或 $。

  1. 在 Jest 运行时启用 ESLint 要在运行 Jest 时启用 ESLint,可以使用以下命令行:
---- -------- ---------------- -----------

其中 --runInBand 选项强制 Jest 按序运行测试,并使 ESLint 进程在运行测试之前运行,确保所有测试均在代码检查之后运行。此外,--config 选项用于指定 Jest 的配置文件,并确保配置文件是正确的。

如果想将这个命令添加到 package.json 的 scripts 中,可以这样做:

-
  ---------- -
    ------- ----- -------- ---------------- ------------
  -
-

结论

ESLint 是一个功能强大的工具,可以帮助开发团队保持代码一致性和减少人为错误。通过本文提供的详细指导和示例代码,您可以将这个工具与 Jest 测试库集成,并改善您的项目开发和测试质量的同时,减少工程师的人力投入。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/6711b6dcad1e889fe2005880