Mocha 测试框架中如何使用 Should.js 进行断言

阅读时长 6 min read

Mocha 是一个流行的 JavaScript 测试框架,可以轻松地编写和运行浏览器和 Node.js 环境下的测试。同样,Should.js是一个流行的断言库,可以帮助您编写易于阅读的测试,它提供了一种优美的语法,可以通过链式调用函数来维护测试的可读性和易于维护性。本文将着重介绍如何在 Mocha 测试框架中使用 Should.js 进行断言。

安装以及基本用法

在开始之前,需要安装两个库——Mocha和Should.js。您可以使用以下命令来全局安装 Mocha 和 Should.js。

接下来,我们将新建一个测试文件 test.js:

在上面的代码中,我们导入 Should.js 包并使用它完成了一个断言。我们调用了一个名为 describe 的函数,它描述了要测试的主题。在本例中,我们测试了一个名为 add 的函数。在函数中,我们通过链式调用 Should.js 中的函数来维护了断言的可读性和易于维护性。

运行测试时,您可以在命令行中输入以下命令来启动:

您将看到类似下面的输出:

如果运行测试失败,输出将会是以下样子:

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

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

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

Should.js 断言

现在让我们探索更多 Should.js 断言的类型。以下是一些示例,涵盖了其大部分使用方法。

  1. 相等断言
-- -------------------- ---- -------
--------------- ----------- -- -- -
  ---------- ------- --------- -- -- -
    --------------------
  ---

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

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

在上述示例中,我们使用 equaldeepEqual 函数来比较数字,字符串和对象的相等性。

  1. 大小比较断言
-- -------------------- ---- -------
-------------------- --- ------- ---- --- ---- ------ -- -- -
  ---------- ------- --- --------- -- -- -
    -----------------------
    -----------------------
  ---

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

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

在上面的代码中,我们使用 abovebelow 函数来比较数字和日期的大小,并使用 lengthOfcontainEql 函数来比较数组的长度和元素。

  1. 类型比较断言
-- -------------------- ---- -------
-------------------- --- ---- ------------- -- -- -
  ---------- ------- --- ------- ---- ------- -- -- -
    -------------------------
    -----------------------------
  ---

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

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

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

在上述示例中,我们使用 a 函数和 not 函数来比较值的类型,并使用 property 函数来比较对象的属性。

结尾

在本文中,我们学习了如何在 Mocha 测试框架中使用 Should.js 断言库,并深入了解了 Should.js 中的大部分使用方法和函数。Should.js 提供的语法和函数使得测试更为可读,易于维护和编写。希望您通过本文的学习,可以更有效地使用 Should.js 断言库。

Source: FunTeaLearn,Please indicate the source for reprints https://funteas.com/post/6795b962504e4ea9bdbf6cec

Feed
back