npm 包 es-t-dd 使用教程

阅读时长 6 分钟读完

介绍

es-t-dd( es-test-double-decorator )是一个轻量的 JavaScript 库,提供了一种简单的方法来创建 mock 和 stub。

它的主要思想是在代码中为测试准备测试数据。es-t-dd 可以帮助创建可读性更高的测试。让测试代码更加可读,更加易于理解,更加方便快捷。

特点

  • 支持 mock 和 stub,可以精准模拟需要测试的对象
  • 简单易用,只需要使用几个装饰器修饰你的函数或类即可
  • 可扩展,支持自定义实现

安装

es-t-dd 可以通过 npm 安装,命令如下:

使用

mock

修饰器

es-t-dd 提供了 @Mock 修饰器,可以修饰一个被测试的类或者一个对象的某个方法:

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

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

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

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

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

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

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

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

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

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

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

stub

修饰器

es-t-dd 还提供了 @Stub 修饰器,可以修饰一个被测试的类或对象的某个方法,这个方法不会被调用,只会返回预定义的值:

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

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

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

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

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

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

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

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

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

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

自定义实现

es-t-dd 允许自己扩展实现,只需要继承 BaseMock 或者 BaseStub 并实现需要的方法,如下:

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

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

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

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

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

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

总结

es-t-dd 是一个非常简单易用的 mock 和 stub 库,只需要使用几个简单的装饰器便可以轻松创建 mock 和 stub。同时它还具有可扩展性,可以方便地实现自己的需求。作者认为,它是一款很不错的前端测试工具,值得尝试。

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

纠错
反馈