npm 包 jest-matchers 使用教程

阅读时长 5 分钟读完

什么是 jest-matchers?

jest-matchers 是一个 Jest 框架下的 npm 包,可以用于进行一些常见的测试操作,例如对于数值的大小、字符串的相等性或对象的属性等进行判断。同时 jest-matchers 支持自定义的 matcher,即通过编写用户自己的代码来扩展功能。

安装 jest-matchers

在使用 jest-matchers 之前,需要在项目中安装,并且进行相关的配置,步骤如下:

1. 进入项目的根目录,使用 npm 安装 jest 包:

2. 安装 jest-matchers 包:

3. 在项目根目录下创建 jest.config.js 文件:

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

使用 jest-matchers

jest-matchers 中包含了一些常用的 matcher,例如 toBe、toEqual、toBeTruthy、toBeFalsy 等,同时也可以使用自定义的 matcher。

toBe

toBe 用于比较两个变量是否相等,如果两个变量的值相等,则测试通过;否则测试失败。

示例代码:

toEqual

toEqual 用于比较两个变量的值是否相等,如果两个变量的值相等,则测试通过;否则测试失败。

示例代码:

toBeTruthy

toBeTruthy 用于判断一个变量是否为真值,如果该变量为真,则测试通过;否则测试失败。

示例代码:

toBeFalsy

toBeFalsy 用于判断一个变量是否为假值,如果该变量为假,则测试通过;否则测试失败。

示例代码:

自定义 matcher

在创建 jest.config.js 文件时,可以编写自己的 matcher,并将其添加到项目中。

示例代码:

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

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

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

总结

jest-matchers 是一个很好用的 Jest 框架下的 npm 包,可以用于进行一些常见的测试操作,其中包含了一些常用的 matcher,同时也支持自定义 matcher,可以通过给项目添加用户自己的代码来扩展功能。具体使用方法可以详细了解上述内容,方便进行相关的单元测试工作。

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

纠错
反馈