npm包test-got使用教程

简介

NPM包test-got是基于got封装的针对Http请求的单元测试工具,支持Mock Server, API Test和e2e Test场景,能够使得Http请求的单元测试更便捷高效。

安装

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

使用

在使用test-got之前,需要先引入chai和mocha来进行测试用例的编写。

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

Mock Server测试

Mock Server测试旨在模拟API的服务端返回数据,并支持测试用例的组织、维护。

在进行Mock Server测试之前,需要引入Mock Server之前的代码:

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

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

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

这段代码中定义了一个mock server,用于返回/hello/:name路径下的Hello ${name}!内容。

接下来是测试用例的编写:

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

这段测试代码中调用了TestGot这个函数,发起了一个get请求,查询参数为“q”,并断言返回的内容为“Hello world!“。

API Test

API Test测试案例是指验证请求的响应内容是否正确。

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

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

e2e Test

e2e Test测试案例是指验证请求的响应内容是否正确。

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

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

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

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

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

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

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

此处展示了一个完整的e2e测试,其通过调用POST请求进行注册并验证返回值,调用POST请求进行登录,进而获取到token,最终调用GET请求进行登出,并验证返回值。

总结

test-got是一个非常便利可靠的Http请求单元测试工具,支持mock server, API test和e2e test三种类型的测试案例,可以使得开发人员在进行Http请求相关的单元测试时取得更高的效率。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60067355890c4f7277583a93


猜你喜欢

  • npm 包 cypressautomocker 使用教程

    在前端开发中,测试是非常关键的一项工作。而在测试过程中,模拟后端接口数据的过程是比较麻烦的事情。因此,本文将介绍一款 npm 包 —— cypressautomocker,它可以帮助前端开发人员快速地...

    4 年前
  • npm 包 lout4express 使用教程

    前言 在前端开发中,npm 是不可缺少的一部分。npm 管理了许多功能强大、易于使用的工具,以方便开发人员进行前端开发。 在本文中,我们将介绍一种名为 lout4express 的 npm 包,它可以...

    4 年前
  • npm 包 chartjs-adapter-dayjs 使用教程

    Chart.js 是目前使用非常广泛的一款 JavaScript 图表库,它支持各种常见的图表类型,如折线图、柱状图、饼图等。而 chartjs-adapter-dayjs 是一个 Chart.js ...

    4 年前
  • npm 包 @marvnet/express-dynamic-helpers-patch 使用教程

    本文介绍了 npm 包 @marvnet/express-dynamic-helpers-patch 的使用教程。该包提供了一种快速、简便的方式用于动态添加 Express 模版辅助方法。

    4 年前
  • npm 包 ospo-pug-view-services 使用教程

    前言 在前端开发过程中,我们经常需要使用各种npm包来辅助我们的开发工作。本篇文章将向大家介绍一款非常实用的npm包 ospo-pug-view-services,该包可以帮助我们在Node.js中使...

    4 年前
  • npm 包 @tiaanduplessis/react-resize 使用教程

    前言 React 的重要特点之一是,它让前端开发人员可以轻松地创建动态的 Web 应用程序。然而,随着应用程序的规模不断扩大,我们可能需要使其能够动态调整大小,以便更好地适应不同屏幕和设备尺寸。

    4 年前
  • npm 包 react-native-masterpass-checkout 使用教程

    在移动应用开发中,支付功能是非常重要的一部分。而 react-native-masterpass-checkout 是一款用于 React Native 开发的支付组件库,可以非常方便地在应用中集成 ...

    4 年前
  • npm 包 css-to-mui-loader 使用教程

    介绍 在前端开发中,制作 UI 时常常要用到 CSS,而 MUI 是移动端 UI 框架,是一个基于 Bootstrap 构建的可以快速开发界面的框架。本文将介绍一个 npm 包 css-to-mui-...

    4 年前
  • npm 包 framework7-redux 使用教程

    前言 在现代 Web 应用开发中,前端框架和工具是不可缺少的一部分。而框架和工具的更新迭代也十分迅速。本文将介绍一款基于 Framework7 和 Redux 的 npm 包——framework7-...

    4 年前
  • 使用 npm 包 websocket-manager

    在前端开发中,我们常常需要用到 WebSocket 来进行实时通讯。而在使用 WebSocket 时,我们需要使用 WebSocket API 来进行连接和数据的传输。

    4 年前
  • npm 包 rxjs-augmented 使用教程

    在前端开发中,rxjs-augmented 是一个非常有用的 npm 包,它可以让我们更加轻松地处理异步数据流操作。本文将介绍如何使用 rxjs-augmented 这个 npm 包,使用示例代码和深...

    4 年前
  • npm包 larvitrouter 使用教程

    简介 npm包 larvitrouter 是一个用于nodejs的轻量级路由器,允许您快速轻松地定义和处理HTTP路由。 安装 在您的Node.js项目中,可以通过以下命令使用npm安装larvitr...

    4 年前
  • npm 包 Ionic3-android-backbutton 使用教程

    什么是 Ionic3-android-backbutton 包 Ionic3-android-backbutton 是一个适用于 Ionic3 应用程序的 npm 包,用于在 Android 平台上实...

    4 年前
  • npm 包 @use-cdn/common 使用教程

    前言 前端开发人员在进行开发过程中,经常会用到各种各样的包,这些包大多存在于 npm 包管理器上,方便开发人员调用。而对于一些公共资源,我们亦可以选择将其存放在 CDN 上,以提高页面的加载速度和性能...

    4 年前
  • npm 包 laravel-mix-wp-blocks 使用教程

    前言 Laravel Mix 是一个用于定义 Webpack 构建步骤的优雅、流畅的 API。而 laravel-mix-wp-blocks 这个 npm 包则为开发者提供了在 WordPress 中...

    4 年前
  • npm包@use-cdn/cli使用教程

    简介 在前端开发中,应用程序升级是必要的。升级时,我们希望用户可靠且快速地下载新的代码文件,而又不会破坏原来的浏览体验。作为一种常见的优化方法,CDN是向用户分发升级后的代码的一种标准方式。

    4 年前
  • npm 包 @use-cdn/karma 使用教程

    作为前端开发人员,我们经常需要使用到各种第三方库和框架。这些库往往以 npm 包的形式发布,可以通过 npm install 命令进行安装。然而,在前端项目中引入第三方库时,往往需要通过 CDN 加载...

    4 年前
  • npm 包 @novaris/ng-api-client 使用教程

    介绍 在前端开发中,经常需要使用 API 来获取或者发送数据。虽然可以使用原生的 XMLHttpRequest 对象或者 fetch API 来实现,但是这些方法并不能很好地封装和管理多个 API。

    4 年前
  • npm 包 @novaris/typescript-client 使用教程

    用 TypeScript 开发前端应用,能够减少 JavaScript 中的一些常见错误,并提供更好的代码补全和类型提示功能。但是,当 TypeScript 与后端接口或其他服务集成时,经常需要手动编...

    4 年前
  • npm 包 ng-indexed-db 使用教程

    什么是 ng-indexed-db? ng-indexed-db 是一个简单易用的 IndexedDB 封装库,主要用于在 Angular 应用程序中进行 IndexedDB 操作。

    4 年前

相关推荐

    暂无文章