开源技术 * IBM 微讲堂:Kubeflow 系列(10 月 29 日,8:00PM) 了解详情

使用测试驱动开发来构建 Node.js 应用程序

摘要

本 Code Pattern 向您展示如何使用测试驱动开发(TDD)来创建世界一流的 Node.js 货币转换微服务。此 Code Pattern 是一个微服务,它是 Bee Travels 项目的一部分。

概览

本 Code Pattern 向您展示如何使用测试驱动开发(TDD)来创建世界一流的 Node.js 货币转换微服务。此 Code Pattern 是一个微服务,它是 Bee Travels 项目的一部分。

测试驱动开发是一种将编码、测试和设计紧密结合在一起的编程风格。因此,在设计应用程序的功能时,首先要编写单元测试,然后再实现代码。

本 Pattern 通过使用现代 JavaScript ECMA 脚本和流行的 NPM 库(在项目页面底部的 “Anatomy of this Application” 部分中列出)展示了现代 Node.js 开发。对于单元测试,我们将使用 Jest,这是一个能够与 TDD 配合良好的 JavaScript 单元测试框架测试库。

前提条件

您需要先了解测试驱动开发才能跟上此 Pattern 中的步骤。

您还需要在本地机器上安装:

成果

学完本 Code Pattern 之后,您将掌握如何:

  • 设计并创建 Node.js 微服务及 REST 接口,该接口有 swagger 测试工具,您可以在其中手动检查、发现和运行各种 API 端点。
  • 使用并运行这一简单的微服务。
  • 将本代码库作为参考架构和工具链使用来创建您自己的 Node.js 微服务。
  • 在 Kubernetes 上部署并运行此微服务。

流程

此流用于货币转换微服务的运行时。

流程

  1. 使用者通过因特网使用 http/s 请求调用微服务。
  2. ExpressJS Web 服务器接受 REST 请求(例如,GET /convertCurrency/ZAR/USD/600.66)。
  3. Express 中的代码路由将请求传递到一个服务模块,该服务模块又调用欧洲货币兑换 API。
  4. 检索并存储 ZAR 的汇率。600.66 的南非兰特(ZAR) 的被换算成美元 (USD)。
  5. ExpressJS Web 服务器将以美元金额(在本例中为 $40.59)将响应发送给使用者。

操作说明

  1. 运行 git clone TDD-NodeJS-Containers 来克隆代码仓库。
  2. 运行 node -v 来确保安装 Node.js 10.16.1 或更高版本。
  3. 运行 npm install 来使用 NPM 安装软件包。
  4. 运行 npm start 来启动应用程序。
  5. 从您的浏览器 localhost:4001 浏览 API。

本文翻译自:Use test-driven development to build a Node.js application(2020-02-07)

Legend