【vitest 单元测试】如何蹭 ant-design-web3 的PR

这篇具有很好参考价值的文章主要介绍了【vitest 单元测试】如何蹭 ant-design-web3 的PR。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

这篇文章分享单测经验,希望你能收获到有用的单测知识或者pr思路,填补单测的过程可以深刻理解组件内部的每一个流程,相信一定有所收获。

前言

  • 最近刚好在做一些单测覆盖的工作,在排查执行不到的地方的过程,可以梳理整个组件执行的脉络,甚至发现一些可以优化组件的地方。

  • 正常我们写完一个组件之后应该根据预期的执行来写好单测,这样的话如果后面有其他人动了逻辑,pr的时候ci就会进行单测,然后指出报错的地方。我的第一个单测试从下图中最下面的第一个开始的,当时修了一个issue中的bug,然后需要对应去补充一些单测。

  • 通过render渲染组件,也可以用react的hook 或者vi.mock去模拟一些事件,点击事件的话可以用fireEvent来模拟。

import React, { useEffect } from 'react';
import { fireEvent, render } from '@testing-library/react';
import { describe, expect, it, vi } from 'vitest';

【vitest 单元测试】如何蹭 ant-design-web3 的PR,单元测试,react,web3,vitest,ant-design-web3

查看单测覆盖情况

运行命令,本地会生成一份临时目录

pnpm run test:coverage

【vitest 单元测试】如何蹭 ant-design-web3 的PR,单元测试,react,web3,vitest,ant-design-web3

通过live server打开html即可

【vitest 单元测试】如何蹭 ant-design-web3 的PR,单元测试,react,web3,vitest,ant-design-web3

点开具体文件地址,可以查看文件覆盖的行数

发现有红的,我们就可以写单测去完善优化它。
【vitest 单元测试】如何蹭 ant-design-web3 的PR,单元测试,react,web3,vitest,ant-design-web3

开发场景的经验

只执行某个文件的test

【vitest 单元测试】如何蹭 ant-design-web3 的PR,单元测试,react,web3,vitest,ant-design-web3

响应式场景

modal 在尺寸过于小的时候,会触发其他的模式,可能页面显示上会有点不一样

    vi.spyOn(Grid, 'useBreakpoint').mockReturnValue({
      md: true, // ≥ 768px, mock PC
    });

查看dom

通过 console.log(baseElement.outerHTML);直接输出整个dom的结构
【vitest 单元测试】如何蹭 ant-design-web3 的PR,单元测试,react,web3,vitest,ant-design-web3文章来源地址https://www.toymoban.com/news/detail-795179.html

modal关闭

    fireEvent.click(baseElement.querySelector('.ant-modal-close')!);

    await vi.waitFor(() => {
      expect(
        baseElement.querySelector('.ant-web3-connect-button-profile-modal')?.className,
      ).toContain('ant-zoom-leave');
    });

到了这里,关于【vitest 单元测试】如何蹭 ant-design-web3 的PR的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 年轻人的第一款单元测试框架———vitest

    一款合格的开源项目是避免不了单元测试的,这也是这几年单元测试的热度居高不下的原因。而在今年的 state of js 2022 中,我们可以看见在 代码库层级列表 中, vitest 飞升一跃,直接到了第二名,仅次于同门师兄弟 vite ,而 element plus unocss 等知名开源项目都采用了vitest进行单

    2024年01月17日
    浏览(47)
  • Vue3+Typescript+Vitest单元测试环境+基础用例篇

    近来工作接触了一个有意思的东西,那就是Vue3的单元测试。虽说写起来费时费力,但是它确实可以让我们设计的组件更加健壮、更加合理且风险可控,同时编写单元测试也让我们更近一步理解组件的设计原理,好了废话不多说,直接开始吧。 初始化一个vue3+typescript项目,移

    2024年02月10日
    浏览(45)
  • vitest 单元测试配合@vue/test-utils 之 axios 篇

    vitest 是由 vite 提供支持的极速单元测试框架,VueTestUtils 是 Vue.js 的官方测试实用程序库,Axios 是一个基于 promise 的网络请求库,以上均为各自官网对其的描述 项目中使用 axios 是非常常见的,所以我们可以对他做一个单元测试,在 test-utils 的文档中提到除了 jest.mock()还可以使

    2024年02月19日
    浏览(40)
  • vite + vue3 的项目中使用 vitest 做单元测试(仅供参考)

    在 vitest 中 集成了c8,c8 是测试覆盖率检查的工具,告诉开发者代码中有哪些代码行被覆盖了,哪些没有覆盖。 在package.json增加npm script 如果没安装c8,运行命令的话,Vitest 会提示安装 c8,默认yes,回车执行安装。安装后,命令行删除测试覆盖率,同时在 src/coverage 下生成一个

    2024年02月03日
    浏览(49)
  • Web项目如何做单元测试

    你可能会用单元测试框架,python的unittest、pytest,Java的Junit、testNG等。 那么你会做单元测试么!当然了,这有什么难的? test_demo.py inc()  是定义的一个被测函数, test_anserver()  用于测试上面的一段代码。 通过pytest运行上面的代码: 单元测试不就是这么单嘛! 那么Web项目中

    2024年02月16日
    浏览(34)
  • vue3+ant design的form数组表单,如何校验

    首先,先说说我要实现的内容:如下图,点“新增”会添加一个灰框内容,form表单是一个数组,一个灰框为一个对象,各对象保存时各自校验自己表单里的内容,互不干扰!   上页面代码(看部分代码就懂了): 2023.11.1月添加补充:当定义rules,用v-bind方法绑定,校验不生

    2024年02月08日
    浏览(46)
  • Vue 3 中 Ant Design Vue 如何自定义表格 Table 的表头(列头)内容?

    项目用到的是 Ant Design Vue (2.2.8) 组件库,开发中遇到一个如下图的表格,有些表头文本后面会有一些自定义图标,鼠标移入图标时显示对应的审批时间提示。当前列如果没有审批时间就会隐藏图标,只展示列头文本。 使用 Ant Design Vue 基础的 Table 组件是无法满足这个场景的

    2024年02月16日
    浏览(45)
  • 如何vue使用ant design Vue中的select组件实现下拉分页加载数据,并解决存在的一个问题。

        需求:拉下菜单中数据过多,200条以上,就会导致select组件卡死。所以需要使用滑动到底部使其分页加载     可以借助 onPopupScroll 事件来监听下拉菜单的滚动事件,并判断当前是否已经到达了下拉菜单底部。具体可以通过以下步骤实现:     1、在组件中绑定 @popupScro

    2023年04月20日
    浏览(54)
  • vue3+ant design vue+ts实战【ant-design-vue组件库引入】

    🔥🔥更多内容见Ant Design Vue官方文档 🔥点击复习vue3【watch检测/监听】相关内容 👏👏👏一个好项目的编写不仅需要完美的逻辑,以及相应的技术,同时也需要一个 设计规范的高质量UI组件库 。👏👏👏本期文章将会详细讲解 Ant Design of Vue 组件库的 安装、使用、引入 。

    2024年02月02日
    浏览(50)
  • Ant Design入门

    目录 一:什么是Ant Design? 二:开始使用 三:布局 四:表格         Ant Design 是阿里蚂蚁金服团队基于 React 开发的 ui 组件,主要用于中后台系统的使用。         官网: https://ant.design/index-cn   设计语言: 随着商业化的趋势,越来越多的企业级产品对更好的用户体验有了

    2024年02月02日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包