npm 包 chai-validate-response 使用教程

阅读时长 6 分钟读完

简介

chai-validate-response 是一个可以通过 chai 来校验 HTTP(s) 响应的 npm 包,可以帮助前端开发者在编写自动化测试时进行方便快捷的响应验证。本文将介绍 chai-validate-response 的使用方法,并且会讲解一些常见的验证场景。

安装

在使用之前,我们需要先安装 chai-validate-response,安装方法如下:

使用

要在测试代码中使用 chai-validate-response,我们首先需要引入 chai、chai-http 和 chai-validate-response:

然后,在测试代码中我们就可以使用 .validate 来验证响应:

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

在上面的代码中,我们通过 chai 发送了 GET 请求,并且使用 .validate.bodyJson 方法来验证响应体应该是一个 JSON 对象,其中包含 nameprice 两个属性。这里我们使用了 JavaScript 原生的 String 和 Number 来表示变量类型。

验证类型

chai-validate-response 支持的验证类型包括:

  • String
  • Number
  • Boolean
  • Array
  • Object
  • null
  • undefined

验证规则

chai-validate-response 支持的规则如下:

jsonSchema(schema: Object)

使用 JSON Schema 来验证响应体。

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

header(headers: Object)

验证响应头。

cookie(cookies: Object)

验证响应中的 cookie。

选项

chai-validate-response 可以接受一些选项来定制验证行为,选项如下:

strict

如果设置为 true,则只有满足 schema 中定义的属性才会被认为是合法的响应体。

normalize

如果设置为 true,则 response body 中的属性名和值会被转换成小写,以便进行比较。

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

示例

下面我们来看一些常见的验证场景。

验证属性类型

验证属性值

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

验证响应头

验证 cookie

验证响应体结构

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

总结

chai-validate-response 是一个方便快捷的 npm 包,可以帮助前端开发者在编写自动化测试时进行响应验证,本文介绍了它的使用方法并且讲解了一些常见的验证场景。我们希望本文可以帮助到大家,让大家可以更加方便地编写自动化测试,提高代码质量和开发效率。

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

纠错
反馈