npm 包 storybook-addon-specifications 使用教程

阅读时长 7 分钟读完

Storybook-addon-specifications 是一款优秀的 npm 包,它可以辅助我们开发者更好地进行测试和文档编写工作。它可以在 Storybook 界面中展示组件方面的文档和测试覆盖率等等内容,非常方便和实用。

在指导大家如何使用 storybook-addon-specifications 的使用教程中,我会从以下几个方面展开:

  1. storybook-addon-specifications 的安装方法
  2. storybook-addon-specifications 的基本使用方法
  3. storybook-addon-specifications 在项目实战中的应用

1. 包的安装方法

首先,我们需要在开发项目中安装 storybook-addon-specifications。在终端中输入以下代码可以快速安装该包:

或者是

安装完成后,我们就可以开始使用 storybook-addon-specifications 了。

2. 包的基本使用方法

2.1 在 .storybook/main.js 文件中进行配置

首先,在 .storybook/main.js 文件中进行组件配置,添加 specifications 选项,并引入 withTestsspecifications

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

这里我们可以自定义组件的测试方法和文档等展示形式,这是 Storybook 提供的强大功能。我们在 specifications 中定义我们需要测试的组件和测试内容,比如上述代码中定义了两个测试用例,用于测试日期选择器在不同情况下的样式和功能。

2.2 配置自己的测试文件

接下来,我们需要在 .storybook 中添加测试文件,定义我们自己的测试用例。在组件所在目录下,创建 specs 目录并添加一个自己的测试文件:

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

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

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

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

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

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

代码中我们使用了 enzyme 和 expect 库,可以快速进行测试用例的编写和运行。我们在组件中定义了三个测试用例,分别是渲染成功、显示当前月份和更新选中日期。当这些测试用例全部通过时,说明组件已经正常工作,这些测试用例也同样可以作为组件文档供其他开发者查看。

2.3 在 Storybook 中呈现测试用例

在 config.js 中进行相应配置之后,我们需要引入我们自己定义的测试用例,使其在 Storybook 中进行展示。在组件的 stories.js 文件中进行以下配置:

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

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

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

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

我们首先引入了组件自带的文档,并在 stories 中添加了 docs 参数,表示将该组件的文档添加到 Storybook 中。在 Default 中,我们引入了相应的测试文件并配置了 withTests 参数,表示将测试用例展示在组件文档中。在 results 中,我们可以看到测试用例的具体内容和对应的测试结果。

3. 在项目实战中的应用

在上述的介绍中,我们对 storybook-addon-specifications 进行了详细的解释和使用教程。该包可以在项目中帮助开发者更好地进行测试和文档的工作,使得项目更加稳定和规范。

如果您还在犹豫是否应该加入 storybook-addon-specifications,不妨尝试一下,相信会给你的开发工作带来十分便利的帮助。

完整示例代码请查看以下 GitHub 仓库:

https://github.com/YonV1943/storybook-addon-specifications-tutorial

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/storybook-addon-specifications