电子书 编程

测试驱动的 React(第二版)(英文版电子书)

¥1.90 已售 0
✓ 自动发货 ✓ 永久有效 ✓ 售后保障

资源介绍

全书围绕一个 carousel(轮播图)组件的开发展开,通过一步步的实践,将测试驱动开发的理念和相关技术融入其中。 第一章从测试驱动开发与 Jest 入手。介绍了 Jest 这一由 Meta 开发的测试框架,它凭借丰富的功能和稳定的性能,成为近年来测试 JavaScript 代码的热门选择。Jest 运行在 Node 进程中,借助 jsdom 库模拟浏览器 API,带来了测试速度快、代码覆盖率计算便捷、跨系统运行结果一致等优势。读者将学习如何设置 Node 项目,安装 Jest 作为依赖,并编写第一个测试。同时,深入理解测试驱动开发的精髓 —— 快速迭代,通过编写 FizzBuzz 程序的例子,体验 “先写测试(失败)、再写实现(通过)、最后提交代码” 的 TDD 流程,还会了解到 Jest 的监视模式和代码覆盖率测量功能。 第二章聚焦于 VS Code 的集成工具。VS Code 作为一款强大且高度可定制的编辑器,在 JavaScript 开发社区广受欢迎。本章介绍了 VS Code 的基本使用,包括命令面板、集成终端、编辑器分组等功能,以及如何进行用户设置和工作区设置以适应个人习惯和项目需求。随后引入了一系列提升代码质量和开发效率的工具:TypeScript 为 JavaScript 添加类型注解,增强代码的可靠性;ESLint 用于检测常见错误和代码风格问题;Prettier 则自动格式化代码,让开发者专注于代码逻辑而非格式。最后介绍了 Wallaby 工具,它能在开发者输入代码时实时运行测试,提供即时反馈。 第三章进入 React 与 Testing Library 的测试实践。讲解了如何使用 Vite 创建 React 项目,Vite 作为一款静态构建工具,能高效地编译和打包 JavaScript 代码,非常适合构建 React 组件库。介绍了 JSX 和 TSX 语法,JSX 允许在 JavaScript 中嵌入类 HTML 标记,TSX 则是 TypeScript 与 JSX 的结合。随后详细阐述了如何使用 React Testing Library 测试 React 组件,从简单组件到嵌套标记,再到有状态组件,通过为 carousel 组件的各个部分(CarouselButton、CarouselSlide、Carousel)编写测试,掌握测试组件属性传递、交互行为等方面的技巧。 第四章探讨了使用 styled-components 在 JavaScript 中进行样式处理。传统的 React 应用中,JavaScript 与 CSS 分离会带来一些问题,如样式组织困难、组件样式覆盖引发的 “特异性战争” 等。而 styled-components 作为 CSS-in-JS 的典型代表,允许开发者以熟悉的 CSS 语法编写样式,且样式规则在运行时动态生成,带来了代码组织、可维护性和可测试性等方面的优势。本章介绍了如何使用 styled-components 为 carousel 组件添加样式,包括创建带样式的组件、根据属性动态生成样式,以及如何测试这些样式,还介绍了使用 Stylelint 检查样式代码,以及利用快照测试保存组件样式状态。 第五章围绕钩子(Hooks)进行重构。钩子是 React 生态系统中替代高阶组件(HOCs)的方案,能在不编写类组件的情况下使用状态和其他 React 特性,有助于将复杂组件拆分为功能明确的小单元。本章介绍了如何创建自定义钩子,如 useSlideIndex 用于管理轮播图的索引状态,还讲解了可控组件模式,使组件既可以受控(通过 props 控制)也可以非受控(内部状态控制)。此外,探讨了如何测试涉及定时器的代码,以及使用 useCallback 和 useRef 钩子防止不必要的更新,最后介绍了 React Devtools 在调试组件状态方面的应用。 第六章关注持续集成与协作。持续集成(CI)能将代码质量控制等任务自动化,减轻项目维护者的负担。本章介绍了如何设置 Travis CI 服务,让其在代码推送或提交拉取请求时自动运行测试、检查代码等。还讲解了使用 Husky 管理 Git 钩子,在提交代码前自动运行测试和代码检查,确保代码质量。最后介绍了 Storybook 工具,它能为 React 组件生成交互式文档,方便团队协作和组件展示。 核心价值 本书并非单纯介绍 React 知识,而是以测试驱动开发为核心,结合丰富的工具和实践案例,帮助读者在 React 开发中养成良好的编码习惯,写出更高质量、更易维护的代码。通过 “先测试后实现” 的方式,让开发者在开发过程中获得快速反馈,及时发现并解决问题,同时培养积极寻求反馈、持续优化代码的思维方式。无论是 React 新手还是有经验的开发者,都能从书中获得实用的知识和技巧,提升 React 开发的效率和质量。 Test-Driven React