NPM 包 Jest 使用教程

阅读时长 3 分钟读完

Jest 是一个非常流行的 JavaScript 测试框架。它被广泛应用于前端和后端开发中,并且是 React 应用程序的默认测试工具。在本文中,我们将介绍如何使用 Jest 进行前端测试。

安装 Jest

要开始使用 Jest,首先需要在本地计算机上安装它。可以使用 npm 包管理器轻松安装 Jest:

请注意,--save-dev 标志表示 Jest 只用于开发目的,而不是在生产中部署。

编写测试用例

一旦安装了 Jest,就可以编写测试用例了。编写测试用例时,通常会创建一个单独的文件夹来存放所有测试相关的代码和资料。例如,我们可以在项目根目录下创建一个名为 __tests__ 的文件夹,并在其中创建一个名为 sum.test.js 的文件,该文件包含以下内容:

这个测试用例使用 require 导入一个名为 sum 的模块,并使用 Jest 的 test 函数定义了一个测试场景。在这个场景中,我们期望将 1 和 2 传递给 sum 函数并返回 3。如果结果与我们的预期不符,测试将失败。

值得注意的是,expecttoBe 是 Jest 的特定函数。在这个例子中,我们使用了 expect 函数来检查 sum(1, 2) 是否等于 3,使用 toBe 函数来比较两个对象是否相等。

运行测试用例

一旦编写了测试用例,就可以运行它们并查看结果。要运行测试,可以使用以下命令:

这将启动 Jest 并运行所有位于 __tests__ 文件夹中的测试用例。如果所有测试都通过,则输出类似于以下内容的消息:

否则,Jest 将显示哪些测试失败了,并提供有关失败原因的详细信息。

高级用法

除了基本的使用方式外,Jest 还提供了许多高级功能,例如集成到编辑器或 IDE 中、运行过滤和覆盖率报告。这里只介绍其中一些。

使用 Matchers

Jest 提供了许多 Matcher 函数,可以帮助您测试代码的各个方面,例如字符串匹配、数字比较和对象验证。以下是几个常用的 Matcher 函数:

  • toEqual():比较对象是否相等。
  • toBeGreaterThan()toBeLessThan():检查数字是否大于或小于另一个数字。
  • toMatch():检查字符串是否匹配指定的模式。
  • toThrow():检查函数是否引发异常。

使用 Mocks

在测试过程中,您可能需要模拟某些依赖项或外部服务。Jest 允许您使用 Mock 函数来模拟这些组件。以下是一个例子:

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

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

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

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

在这个测试用例中,我们使用 Jest 的 fn() 函数创建了一个 Mock 函数,并将其传递给 fetchData 函数。当 fetchData 函数调用回调函数时,它应该传递一个名为 "peanut butter" 的字符串。如果回调函数被正确调用

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

纠错
反馈