Jest 是一个流行的 JavaScript 测试框架,它旨在提供简单、快速和可靠的测试工具。在本文中,我们将学习如何使用 Jest 测试 Express 中的 API。
为什么要测试 API?
在开发 Web 应用程序时,API 是应用程序的核心。它们连接客户端和服务器,使应用程序能够执行各种操作。因此,API 的质量和可靠性非常重要。测试 API 可以帮助您确保 API 在各种情况下都能正常工作,并减少错误和故障的风险。
安装 Jest
首先,我们需要安装 Jest。可以使用 npm 或 yarn 进行安装:
npm install jest --save-dev
或者
yarn add jest --dev
编写测试用例
接下来,我们将编写一个简单的测试用例来测试我们的 Express API。假设我们有一个名为 app.js
的 Express 应用程序,其中包含一个 /users
路由,用于返回用户列表。以下是 app.js
的示例代码:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- --- - ---------- ----------------- ----- ---- -- - ----- ----- - - - --- -- ----- ------- -- - --- -- ----- ----- -- - --- -- ----- --------- -- -- ---------------- --- -------------- - ----
现在,我们将编写一个测试用例来测试 /users
路由是否正常工作。在项目根目录下创建一个名为 app.test.js
的文件,并添加以下代码:
-- -------------------- ---- ------- ----- ------- - --------------------- ----- --- - ----------------- -------------- --- ------ ------ -- -- - -------- ------ ------- ---- -- ----- -- ------- ----- -- -- - ----- -------- - ----- --------------------------- -------------------------------------- ------------------------------- - --- -- ----- ------- -- - --- -- ----- ----- -- - --- -- ----- --------- -- --- --- ---
在上面的代码中,我们使用了 supertest
模块来发送 HTTP 请求并测试我们的 Express 应用程序。我们编写了一个测试用例来测试 /users
路由是否返回正确的用户列表。我们使用了 Jest 的 expect
断言来验证响应的状态码和响应的主体是否符合预期。
运行测试
现在,我们已经编写了一个简单的测试用例,我们可以使用 Jest 运行测试。在项目根目录下运行以下命令:
npx jest
或者
yarn jest
如果一切正常,您应该会看到类似于以下输出:
PASS ./app.test.js Test the /users path ✓ It should respond with an array of users (7 ms) Test Suites: 1 passed, 1 total Tests: 1 passed, 1 total
结论
在本文中,我们学习了如何使用 Jest 测试 Express 中的 API。我们编写了一个简单的测试用例来测试我们的 Express 应用程序是否正常工作,并使用 Jest 运行了测试。测试 API 可以帮助我们确保 API 在各种情况下都能正常工作,并减少错误和故障的风险。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/675c0fbea4d13391d8fda942