npm 包 @review-packs/storybook-chrome-screenshot 使用教程

前言

在前端的开发过程中,随着项目的不断发展和迭代,我们总会遇到需要不断调整和排查 UI 的需求。而在进行 UI 方面的排查和调试时,我们的最佳助手便是图像截屏。而基于这个需求,@review-packs/storybook-chrome-screenshot 这个 npm 包应运而生。

本篇文章将会详细介绍这个 npm 包的使用方法和流程,以及相关的学习和指导意义。

@review-packs/storybook-chrome-screenshot 的基础介绍

简介

@review-packs/storybook-chrome-screenshot 包是一个基于 Chrome 浏览器的 Storybook 组件截图工具,支持基于 Chrome 的单个页面和多页面截图,并可以使用 Storybook 和 Jest 测试框架。

安装

使用 npmyarn 可以很简单地安装该 npm 包:

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

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

使用方法

在开始使用该组件,我们需要先配置好一个 Storybook 工程,并确保其中运行得起来。

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

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

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

    --- --------

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

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

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

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

--

在这里,我们通过引入 @review-packs/storybook-chrome-screenshot 包,导入其中的 StorybookChromeScreenshot 类,然后在 beforeAllafterAll 生命周期中启动和关闭浏览器,以及初始化 StorybookChromeScreenshot

之后我们可以使用 getScreenshot 方法来进行截图操作,并且通过 toMatchImageSnapshot() 方法将运行结果和之前的结果进行对比。

进阶操作

多页面截图

有时,我们需要对多个页面进行截图。此时,我们可以通过在 StorybookChromeScreenshot 中传入指定的路由策略来实现该功能。

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

在上面的代码中,我们传入了一个字符串数组来配置多个路由,以便于后续进行多个页面的截图操作。

Jest 测试框架的支持

@review-packs/storybook-chrome-screenshot 同时也支持 Jest 测试框架,通过在 Jest 中注册 jest-image-snapshot 插件后,就可以轻松地将不同时间点的截图进行对比了。

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

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

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

    --- --------

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

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

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

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

--

在上面的代码中,我们通过导入 jest-image-snapshot 并注册该插件,使得我们可以通过 toMatchImageSnapshot() 方法进行视图截图的对比操作。

总结

通过本篇文章的阐述,我们可以清晰地了解到 @review-packs/storybook-chrome-screenshot 这个 npm 包的使用方法,而通过这个 npm 包,我们能够很方便地进行 Storybook 组件的截图和对比操作,大大地提高了我们进行 UI 排查和调试的效率。同时,本篇文章也提供了进阶操作的相关说明,可以使我们在更为复杂的项目中也可以使用该 npm 包,再次展现了该 npm 包的强大功能和适用范围。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60066b5751ab1864dac66c6b


猜你喜欢

  • npm 包 with-level-0 使用教程

    npm 是 Node.js 的包管理器,也是前端开发的必备工具之一。其中 with-level-0 是一款非常实用的 npm 包,它可以帮助我们轻松地创建日志记录,并按照级别将其分类。

    3 年前
  • npm 包 @amindunited/write-file 使用教程

    在前端开发过程中,经常需要用到文件的读写操作。npm 包 @amindunited/write-file 是一个可以帮助我们实现文件写入操作的工具。本文将介绍该 npm 包的使用教程,并提供详细的示例...

    3 年前
  • npm 包 @andyyou/log-loader 使用教程

    npm(node package manager)是一个非常流行的包管理工具,提供了大量的开源包供开发人员使用。@andyyou/log-loader 就是其中一个 npm 包,它可以为前端开发人员提...

    3 年前
  • npm 包 apidoc-plugin-ts-klg 使用教程

    前言 在开发 Web 项目时,必不可少的工作就是编写接口文档。在过去,接口文档通常是手动编写的,这不仅费时费力,还容易出错。而随着技术的发展,现在有一种更加高效的方法来生成接口文档,那就是使用工具来自...

    3 年前
  • npm 包 redux-all-creator 使用教程

    redux-all-creator 是一个用于简化 Redux Action 和 Reducer 创建的 NPM 包。通过使用 redux-all-creator,我们可以更加高效地定义 Redux ...

    3 年前
  • npm 包 eslint-config-standard-pp 使用教程

    在前端开发中,一个好的代码风格是非常重要的,不仅有助于整个项目的可读性和可维护性,也能够提高代码的质量和开发效率。而 eslint 就是一个很好的代码检查工具,它可以根据预定义的规则来检查代码中潜在的...

    3 年前
  • npm 包 jmp-node 使用教程

    引言 在前端开发中,我们经常需要处理大量数据,对于这些数据的处理,如果仅仅依靠浏览器自带的方法,显然是不够的。这时候,我们就需要借助一些第三方库来完成某些功能。其中,npm 包 jmp-node 是一...

    3 年前
  • Node-Red-Contrib-Notification-Center 使用教程

    介绍 Node-Red-Contrib-Notification-Center 是一个 npm 包,它是一个 Node-RED 的扩展。它为 Node-RED 提供了通知中心功能,可以将通知发送到用户...

    3 年前
  • npm 包 instagram-following 使用教程

    什么是 instagram-following? Instagram-following 是一个基于 Node.js 平台的 npm 包,用于获取指定用户在 Instagram 上的关注者列表。

    3 年前
  • npm 包 consul-leader 使用教程

    什么是 consul-leader Consul-leader 是一个 npm 包,是用于协调多个进程之间的领导人选举和协作的共享资源管理器。它使用 consul 进行服务发现和协调以实现可靠性和高可...

    3 年前
  • npm 包 cobranzas-s3 使用教程

    cobranzas-s3 是一款基于 AWS S3 的 Node.js 库,用于简化 S3 Bucket 的访问。它可以帮助我们快速地上传、下载、删除文件,还支持批量操作和文件夹操作。

    3 年前
  • npm 包 copy-clipboard 使用教程

    在前端开发中,复制粘贴功能是一个基础但非常常用的功能。在实现复制粘贴功能时,我们通常需要使用一些第三方库,其中比较常用的一个是 copy-clipboard npm 包。

    3 年前
  • npm 包 Smarttext 使用教程

    在前端开发过程中,我们时常需要对用户输入的文本进行处理,例如去除空格、多余的换行符,或是将部分文本加粗、斜体等等。这些操作很容易变得繁琐,因此使用一个好用的文本处理工具可以大大提高开发效率。

    3 年前
  • npm 包 sp-css-import 使用教程

    有时候在前端开发中,我们需要引入多个 css 文件,但是一个个手动引入便显得十分繁琐。此时,我们可以使用 npm 包 sp-css-import 来简化引入多个 css 文件的操作。

    3 年前
  • npm 包 take-a-shot 使用教程

    在前端开发中,我们经常需要对网页进行截图操作,以便方便的进行调试、展示和分享。而事实上,网页截图的实现也并不困难,只需要借助一些工具和技术就可以轻松实现。本文将为大家介绍一个实现网页截图的 npm 包...

    3 年前
  • npm 包 @operator-error/pulumi-aws-vpc 使用教程

    @operator-error/pulumi-aws-vpc 是一个用于创建 Amazon Web Services (AWS) Virtual Private Cloud (VPC) 的 Pulum...

    3 年前
  • npm 包 react-redux-basics 使用教程

    前言 在构建复杂应用程序时,数据经常在组件之间传递。随着应用程序复杂度的增加,传递和管理数据变得困难。React 正是为了简化这个过程而生的。但是,随着应用变得越来越大,我们需要管理一个全局数据状态,...

    3 年前
  • npm 包 gulp-snapex-html 使用教程

    为了提高网站的性能和用户体验,我们通常会屏蔽页面重建和重绘的效果。其中,页面重建指 DOM 继承树的重新搭建,而页面重绘则指浏览器引擎根据新的 DOM 树进行像素渲染。

    3 年前
  • npm 包 translate-components 使用教程

    在前端开发中,多语言支持是很重要的。为了方便地支持多语言,许多开发者选择使用 npm 包 translate-components。这个包可以优雅地处理多语言支持,而且实现方式很简单。

    3 年前
  • npm包callbag-range使用教程

    简介 最近在学习前端开发的过程中,发现了一个很有趣的npm包——callbag-range。callbag-range是一个生成给定范围内数字的callbag生产者的函数。

    3 年前

相关推荐

    暂无文章