Jest 在 TypeScript 项目中的使用

阅读时长 5 分钟读完

Jest 是 Facebook 开源的一个 JavaScript 测试框架。它可以在浏览器和 Node.js 环境下进行 JavaScript 应用程序的单元测试、集成测试和端到端测试。本文将介绍 Jest 在 TypeScript 项目中的使用以及如何编写 TypeScript 类型化的测试代码,旨在为前端开发者提供深入指导和学习。

安装 Jest

在开始 Jest 测试之前,请确保您已安装 TypeScript 和 Node.js。

首先,我们需要使用 npm 安装 Jest 和相关的 TypeScript 库:

其中,

  • jest 是 Jest 测试框架本身的依赖。
  • ts-jest 是 Jest 与 TypeScript 集成的依赖。
  • @types/jest 是 Jest 的类型定义文件。

安装完成后,我们需要在项目根目录下创建 Jest 配置文件 jest.config.js,并在其中配置 TypeScript:

编写测试用例

接下来,我们创建一个简单的 TypeScript 类 Calculator,它有加法和减法两个方法:

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

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

接着,我们创建测试文件 Calculator.test.ts,来测试 Calculator 的两个方法:

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

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

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

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

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

在测试文件中,我们使用 Jest 的 describe 和 test 函数来组织和编写测试用例。其中,

  • describe 函数用于描述测试用例的目标代码,它可以嵌套使用。
  • beforeEach 函数用于在每个测试用例之前初始化目标代码的实例。
  • test 函数包含一个或多个测试用例,并使用 expect 函数测试目标代码的方法。

在这个例子中,我们需要创建 Calculator 实例(在 beforeEach 中)来测试两个方法 add 和 subtract 的正确性。

运行 Jest 测试

在项目根目录下的 package.json 文件中,我们在 scripts 中添加 Jest 的 npm 命令:

然后,我们在终端执行 npm test 命令即可运行 Jest 测试,Jest 会自动找到项目中所有以 .test.ts 结尾的测试文件并执行它们。

如果测试通过,Jest 会输出类似于这样的结果:

如果测试失败,Jest 会输出类似于这样的结果:

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

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

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

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

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

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

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

总结

Jest 是一种功能强大且易于使用的测试框架,它可以帮助我们编写可维护、可靠的测试用例。本文介绍了如何在 TypeScript 项目中使用 Jest,并编写类型化的测试代码。通过对 Jest 的深入学习和理解,我们可以写出更加完善的测试用例,提高前端开发的质量和效率。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/649d2d9548841e98949e7fc1

纠错
反馈