$ npm run test:all ==yarn test:all  # 执行所有测试

单元测试部分:jest 是一个 node 端运行的测试框架,使用了 jsdom 来模拟 DOM 环境,适合用于快速测试 React 组件的逻辑表现,需要真实浏览器可以参考 E2E 测试部分。

enzyme的三种渲染方式

1、shallow渲染叫浅渲染,仅仅对当前jsx结构内的顶级组件进行渲染,而不对这些组件的内部子组件进行渲染,因此,它的性能上最快的,大部分情况下,如果不深入组件内部测试,那么可以使用shallow渲染

2、mount则会进行完整渲染,而且完全依赖DOM API,就是说mount渲染的结果和浏览器渲染结果一样,结合jsdom这个工具,可以对上面提到的有内部子组件实现复杂交互功能的组件进行测试

3、render也会进行完整渲染,但不依赖DOM API,而是渲染成HTML结构,并利用cheerio实现html节点的选择,它相当于只调用了组件的render方法,得到jsx并转码为html,所以组件的生命周期方法内的逻辑都测试不到,所以render常常只用来测试一些数据(结构)一致性对比的场景。在这里还提到,shallow实际上也测试不到componentDidMount/componentDidUpdate这两个方法内的逻辑。

enzyme的三种渲染方式相关推荐

  1. node.js Next框架的三种渲染方式:客户端渲染、SSG、SSR

    前言 next是一款用JS开发的全栈框架,它是基于express框架基础上开发而成,可以用react写客户端,node.js写服务端.一份代码可在前后端同时运行,这在next中称之为同构! 一些nex ...

  2. 【QA答疑】VRay3.4 for SketchUp2017 三种渲染方式

    作者:活力网 今天给大家带来VRay3.4 for SketchUp中,交互式渲染.渐进式渲染.块式渲染三种渲染方式的应用,以及GPU加速的操作原理. 我们将以Q&A的形式为大家解答疑惑. Q ...

  3. Frontend 当前前端的三种渲染方式

    1. CSR (Client Side Rendering) Rendering an app in a browser, generally using the DOM. React(Angular ...

  4. 1.5 使用new创建动态结构和自动, 静态, 动态三种存储方式

    1. 有些时候在运行时创建数组由于在编译时创建数组(有些时候不是这样, 比如使用OpenGL绘图和GPU并行计算结合的时候, 需要将大量的数据传送到显存, 每次计算完又要传送回宿主机渲染, 但并不是要 ...

  5. Web框架之Django_07 进阶操作(MTV与MVC、多对多表三种创建方式、前后端传输数据编码格式contentType、ajax、自定义分页器)

    阅读目录 一.MVC与MTV 二.多对多表的创建 三.ajax,前后端传输编码格式contentType 四.批量插入数据与自定义分页器 摘要 MTV与MVC 多对多表三种创建方式 ajax ,前后端 ...

  6. python的等待代码是什么_Python selenium 三种等待方式详解

    1.目的背景 解决问题:下拉框定位不到.弹框定位不到-各种定位不到,其实大多数情况下就是两种问题:1 有frame,2 没有加等待. 原因:代码运行速度快,而浏览器加载渲染速度慢 解决办法:加等待,目 ...

  7. vue.js三种安装方式

    Vue.js(读音 /vjuː/, 类似于 view)是一个构建数据驱动的 web 界面的渐进式框架.Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件.它不仅易于上手 ...

  8. Kotlin实战练习——自定义圆形图片三种实现方式

    Kotlin实战练习--自定义圆形图片三种实现方式 前言 如今Kotlin越来越重要,本人也开始了Kotlin的学习.为了检测学习效果,加深学习印象,同时回顾一下以前的一些知识点,决定从写一个自定义圆 ...

  9. Python selenium —— 一定要会用selenium的等待,三种等待方式解

    转自  http://lib.csdn.net/article/48/50937?knId=1313 Python selenium -- 一定要会用selenium的等待,三种等待方式解 发现太多人 ...

最新文章

  1. Linux wifi连接桌面,【已解决】Arch linux 安装之后在deepin桌面环境下使用networkmanager连接wifi 出现间歇性重连的情况...
  2. popup a new windows
  3. 剑指offer之找到链表里面包含环的入口节点
  4. 怎么看调用的接口_SpringCloud服务间调用
  5. 95-280-036-源码-资源管理-计算资源管理-TaskSlot-TaskExecutor 中 Slot 的管理
  6. 使用 guard 的正确姿势
  7. unity中移动lindrender和transform, 两个点的位置
  8. Oracle与SQL Server的语法区别——Oracle数据库学习
  9. 数据仓库-事实表和维度表的设计
  10. STM32-FSMC外扩内存SRAM
  11. EXCEL插入超链接——无法打开指定文件
  12. 优思学院|什么是TPM管理?
  13. 图谱笔记(概念梳理)
  14. 华为云CDN,无忧畅享网络
  15. 华为交换机如何批量清除接口配置信息
  16. 复制一段文本粘贴到Excel中(带自动换格换行)
  17. VMware与宿主机文件夹共享、虚拟机磁盘映射
  18. 紫光同创国产FPGA学习之Design Editor
  19. AKM项目轶事之与高中同学徐挺会见
  20. php语言指什么生肖,龇牙咧嘴的生肖 指什么生肖

热门文章

  1. js失焦事件,获焦事件,回车事件
  2. 我猜你不知道wav怎么转换成mp3
  3. Kylin(一)概念介绍
  4. sweetalert2加载弹窗定时自动关闭显示剩余时间
  5. vue源码中优秀代码片段(一)
  6. 剑指泛娱乐,互联网企业产业布局再度升级
  7. Ubuntu环境下基于Linux进行DOL配置
  8. STM32---TIM
  9. Flink DataStream iterate算子的简单使用
  10. 明翰Java教学系列之集合框架篇V0.2(持续更新)