前端自动化测试精讲- 掘金小册课程推荐/优惠

前端自动化测试精讲--掘金小册课程推荐/优惠

单元测试 + 端对端测试 + 持续集成方案,在项目中落地前端自动化测试
祯民
18讲 | 1348人已学习
优惠价¥29.9
官网购买

版权声明

本站非掘金小册官网,与官方无任何关系。我们不提供课程下载或详细内容,仅作为课程分享和推荐平台。我们鼓励大家支持正版,尊重创作者的劳动成果,这样不仅能帮助创作者持续产出优质内容,也能让自己获得更好的学习体验。请通过官方渠道购买和学习课程,感谢您的理解与支持。

课程详情

课程介绍

作者介绍

祯民,字节跳动前端开发工程师,掘金小册《SSR实战:官网开发指南》作者,公众号「祯民讲前端」作者。曾负责 抖音前端技术团队官网字节官网中文版 的开发,现维护抖音直播内容安全相关的业务,同时也是第五届字节跳动青训营《Nextjs实战项目》、《前端自动化测试》课程讲师,对前端自动化测试有长期的深入调研和思考,目前在给互娱中后台业务落地单元测试。

小册介绍

对前端开发而言,自动化测试的重要性不言而喻。对核心组件覆盖自动化测试,可以有效地保证组件功能的单一,起到警醒工程师的作用,而不至于让不同的业务代码相互耦合;新同学可以通过单测快速 get 到这个组件打算做什么、有什么能力,不论是后续的维护还是重构都会更有底气。

对于通用的基础建设,相比手工测试,自动化测试的覆盖率更有说服力,并且可以有效规避某次修改引起的历史功能的异常,从而保证整体功能的稳定。

想必大家也知道自动化测试的重要性。其实,对于前端工程师而言,最大的痛点在于,不知道该怎么去写对应的测试用例。

相比 Golang 、 Java 等纯后端逻辑的自动化测试,前端的自动化测试大部分需要模拟浏览器环境,进行对应 DOM 和 事件效果的断言,测试的过程与常规逻辑的测试有所不同,很多同学想要针对组件进行测试也无从下手。

为此,我特意向 Semi 方向同学取经,一起探讨了如何有效地进行代码测试,并且向项目中进行推广。经过长达几个月的业务实践完善,综合未来趋势和单测稳定性等因素(具体会在2 | 技术选型:React Testing Library Or Enzyme? 中详细介绍),在 Semi 测试方案选型上做出了更适合同学们学习的改进,技术选型上使用 Jest + React Testing Library + Cypress + Storybook。

Jest 是一个 JavaScript 集大成的测试库,是我们单元测试的基础,而 React Testing Library 则提供了一些 React Component 的 Api ,来协助我们进行 React Dom 和事件相关的单测编写。通过单元测试,我们只能覆盖组件中的除滚动外的大部分场景,对于一些复杂场景覆盖就会比较困难,而 Cypress + Storybook 则可以通过 E2E 端对端的方式帮我们弥补这部分覆盖的缺陷。

我将基于这套技术,来展开小册的内容,最终设计出如下的小册大纲,希望可以借此帮助同学们写出高质量代码,提高整体编程素质。

小册模块可以分为四个方向,单元测试 、端对端测试、持续集成、测试理论。

  • 单元测试:我们将结合不同的案例来学习 Jest 的基础知识,并基于 React Testing Library 模拟浏览器 dom 和事件,对组件进行更加精准的自动化测试,这将是本小册最重点的学习内容,通过这部分的学习,大家将对大部分场景的自动化测试游刃有余。
  • 端对端测试:我们将学习从用户视角进行对应的端对端测试,在这个模块,我们将使用业内主流的端对端测试方案 Cypress 进行用户操作的模拟,完善单测无法覆盖的复杂场景,比如滚动、页面跳转等。
  • 持续集成:我们将站在项目视角,介绍如何将自动化测试覆盖到项目开发中,自动生成测试报告的内容。
  • 测试理论:我们将深度思考如何善用自动化测试,不让它成为 kpi 的工具和工程师的负担。工欲善其事,必先利其器,去思考理解自动化测试的意义,结合项目的实际场景,才能真正实现提高整体项目代码质量和风格的初衷。

看过我上一本小册的同学应该大致了解我的写作风格,同样地,为了大家可以更好的理解理论知识,我将针对具体的场景,从零手写教学代码, 结合代码讲解对应的知识,每一节课如果涉及代码,将会在课程的最顶部加上对应仓库的链接,大家可以 clone 下来结合学习加深印象。

你将获得

小册将会从四个维度带大家学习自动化测试:

  1. 使用 Jest + React Testing Library 来对浏览器 Dom 和事件进行模拟,掌握如何对组件场景进行前端的单元测试。
  2. 使用 Cypress 进行用户视角的端对端测试,补全单元测试难以模拟的场景。
  3. 对项目进行自动化测试覆盖率的覆盖,并进行测试报告的自动生成,将自动化测试融入代码开发中。
  4. 对自动化测试的边界和深度有更深入的思考,因地制宜,结合项目场景去使用自动化测试,避免秀技和沦为 kpi 的自动化测试工具人。

目标用户

这本小册适合有下面需求的同学来学习:

  • 不了解自动化测试,希望入门自动化测试的同学;
  • 有一定单测基础,但一直很困惑前端怎么进行环境模拟,不知道该怎么对 dom 和事件进行单测的同学;
  • 想系统了解怎么落地自动化测试落地到自己项目的同学;
  • 对自己的项目代码不满意,觉得耦合度过高,对代码质量有自我追求的同学。

这本小册不会有过复杂的逻辑,考虑到受众,希望有更多的同学可以参与这部分的学习,所以会尽可能地减少技术栈对小册学习的限制,对学习小册的同学有下面这一条要求:

  • 熟悉 React 最佳,使用但并不涉及过多 React 语法,所以有扎实前端 JS 功底即可,最重要的是有一颗对代码追求极致的心。

名人推荐

课程目录

  • 开篇词:如何写前端的自动化测试?
  • 技术选型:React Testing Library Or Enzyme?
  • Async 异步:异步方法如何进行单测?
  • DOM 查询(下):页面元素的参照物查询和优先级
  • Jest 断言:如何告诉程序什么是你的预期?
  • DOM 查询(上):页面元素的渲染和行为查询
  • Mock:怎么替代不需要关注的逻辑?
  • DOM 断言:页面元素的断言
  • User-event:怎么对 Dom 组件绑定事件进行模拟触发?
  • 深入原理:Jest 是怎么实现整个单元测试系统的?
  • FakeTimer:如何"快进"测试定时任务?
  • RenderHook:怎么测试 React hook?
  • Coverage:自动化测试覆盖率的统计
  • 快照测试:怎么保障组件 UI 的完整?
  • CI:项目自动化测试的持续集成方案
  • E2E:怎么覆盖滚动等复杂交互场景的测试?
  • 最后的思考:用例的边界和深度究竟在哪里?
  • 【加餐】Jest Mock 的极致用法 : 如何对 VSCode 插件进行单元测试?

作者介绍

前端开发工程师
一个啥都想试试的普通前端,掘金小册《SSR实战:官网开发指南》、《前端自动化测试精讲》作者

作者其他课程

SSR 实战:官网开发指南 - 掘金小册课程推荐/分享/优惠/折扣
SSR 实战:官网开发指南
原理+实战+优化+部署,全链路还原官网实际开发场景
祯民
2052人已学习
优惠价¥29.9
官网购买

推荐

SSR 实战:官网开发指南 - 掘金小册课程推荐/分享/优惠/折扣
SSR 实战:官网开发指南
原理+实战+优化+部署,全链路还原官网实际开发场景
祯民
2052人已学习
优惠价¥29.9
官网购买
Nuxt 3.0 全栈开发 - 掘金小册课程推荐/分享/优惠/折扣
Nuxt 3.0 全栈开发
核心知识 + 工程架构 + 全栈进阶 + 项目实战,快速精通 Nuxt3 开发!
杨村长
1175人已学习
优惠价¥129
官网购买
前端依赖治理:代码分析工具开发实战 - 掘金小册课程推荐/分享/优惠/折扣
前端依赖治理:代码分析工具开发实战
掌握代码静态分析通用能力,深化工程化思维
前端iceman
2174人已学习
优惠价¥29.9
官网购买
SpringBoot 场景开发多面手成长手册 - 掘金小册课程推荐/分享/优惠/折扣
SpringBoot 场景开发多面手成长手册
多场景的开发整合+使用+核心原理剖析,广度深度全都要。
LinkedBear
895人已学习
优惠价¥49.9
官网购买
Flutter 渲染机制 - 聚沙成塔 - 掘金小册课程推荐/分享/优惠/折扣
Flutter 渲染机制 - 聚沙成塔
全面探索 Flutter 框架源码,助你攀登九层之台,一览顶上风采 ~
张风捷特烈
1690人已学习
优惠价¥3.5
官网购买
推荐系统完全指南 - 掘金小册课程推荐/分享/优惠/折扣
推荐系统完全指南
用简单易懂的方式,降低阅读门槛,让更多人构建出推荐系统的知识体系,理解核心技术,实现落地应用。
周兴博
499人已学习
优惠价¥39.9
官网购买