如何使用 Jest 测试 JS 库

阅读时长 5 分钟读完

Jest 是一个流行的 JavaScript 测试框架,它提供了一系列强大的功能来测试 JavaScript 应用程序和库。本文将介绍如何使用 Jest 来测试 JS 库。

安装 Jest

首先需要全局安装 Jest:

或者可以将 Jest 安装为开发依赖项:

创建测试

在开始编写测试之前,需要确保测试代码与被测代码在不同的目录下。这是因为在编写测试代码时,我们要使用被测代码的 API,而不能修改被测代码。通常情况下,我们会在项目的根目录下创建一个名为 __tests__ 的文件夹,然后在这个文件夹下创建和被测代码一一对应的文件,文件名以 .test.js 结尾。例如,如果被测代码在 src/index.js 中,则测试代码应该在 __tests__/index.test.js 中。

现在,让我们来创建一个简单的测试,测试一个函数是否可以正确地将两个数字相加。在 __tests__/math.test.js 中添加以下代码:

这段代码将导入一个名为 sum 的函数,它将两个数字相加。然后,我们定义了一个测试,它期望 sum(1, 2) 的结果应该是 3

运行测试

现在,我们已经编写好了我们的第一个测试,现在可以使用 Jest 运行测试。可以运行单个测试文件,也可以运行整个测试套件。运行以下命令来运行测试:

或者,可以运行整个测试套件:

Jest 将扫描项目中所有以 .test.js 结尾的文件,并执行它们。

测试 API

Jest 提供了一些用于测试的 API,下面是其中的一些:

test(name, fn)

定义一个测试用例。name 是测试用例的名称,fn 是一个函数,包含测试代码。例如:

expect(value)

用于指定被测试代码的期望输出。例如:

toBe(value)

测试是否等于一个值。例如:

toEqual(value)

测试是否等于一个值,但允许比较对象和数组的内容。例如:

toBeTruthy()

测试值是否为 true。例如:

toBeFalsy()

测试值是否为 false。例如:

toBeGreaterThan(number)

测试值是否大于一个给定的数。例如:

toBeLessThan(number)

测试值是否小于一个给定的数。例如:

toBeCloseTo(number, numDigits)

测试一个浮点数是否在一个指定的精度范围内。例如:

更多 API 请参考 Jest 官方文档

Jest 的配置文件

Jest 支持通过配置文件进行配置。你可以在项目根目录下创建一个名为 jest.config.js 的文件来配置 Jest。

例如,我们可以将以下配置添加到 jest.config.js 中:

这个配置文件用于配置 Jest 的环境、测试文件排除规则、代码覆盖率等。具体配置请参考 Jest 配置文件

结论

Jest 是一个非常强大的 JavaScript 测试框架,可以轻松地为 JavaScript 应用程序和库编写测试。本文简要介绍了如何使用 Jest 来测试 JS 库,并简单介绍了 Jest 的一些 API 和配置文件。

在实际开发中,编写良好的测试用例是确保代码质量和可维护性的重要部分。为了使我们的代码更加稳定和可靠,我们应该养成编写测试用例的好习惯。

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

纠错
反馈