♻️
前端 TDD(测试驱动开发)
  • README
  • 总-课程目标
  • 总-课程安排
  • Coding
    • 第一题:FizzBuzz 数字游戏
      • 什么是 FizzBuzz?
      • 任务 0:练功前的热身
      • FizzBuzz 项目剖析
      • 任务 1:TDD 初体验
      • 任务 2:先利其器
      • 任务 3:再撸一遍
      • FizzBuzz 项目总结
      • 附录 1:Jest 测试基础及要点
      • 附录 2:Testing Library 组件测试基础
    • 第二题:MarsRover 火星车
      • 任务 1:Tasking 任务分解
      • 火星车实战
      • 火星车 Tasking 任务分解
      • 任务 2:MarsRover 实战演练
      • MarsRover Coding 演示
      • 任务 3:MarsRover 练习
      • MarsRover 项目总结
    • 第三题:CommentBox 留言板
      • CommentBox 项目剖析
      • 任务 1:Cypress E2E 测试
      • 任务 2:测试驱动组件单元接口
      • 任务 3:组件级别的快速反馈
      • 任务 4:由外到内的前端 TDD
      • CommentBox 项目总结
    • 第四题:Bookshelf 魔法书架
      • Bookshelf 项目剖析
      • 任务 1:练习 API 契约测试
      • 任务 2:组件化与数据流管理
      • 任务 3:Redux 数据流测试
      • 任务 4:简化 Redux 项目结构
      • Bookshelf 项目总结
      • 附录 1:什么才是真正的 RESTful 架构?
      • 附录 2:【译】Redux 和 命令模式
      • 附录 3:【译】什么是 Flux 架构?(兼谈 DDD 和 CQRS)
    • 第五题:ShoppingCart 购物车
      • ShoppingCart 项目剖析
      • React 哲学:Thinking in React
      • 任务 1:任务分解 - 驱动组件树拆分
      • 任务 2:综合应用 - 驱动组件接口设计
      • 任务 3:综合应用 - 驱动数据流管理
      • 任务 4:综合应用 - 驱动组件样式开发
      • ShoppingCart 项目总结
由 GitBook 提供支持
在本页
  1. Coding
  2. 第四题:Bookshelf 魔法书架

Bookshelf 项目总结

好了,在这个项目里面,你又学到了哪些知识呢?

  • 首先,学会了 Pact 契约测试,API 先行。

  • 其次,重温了 E2E 驱动拆分组件树,添加数据流;

  • 第三,学会了 React、React Router、Redux 结合 Hook 的用法;

至此,前端 TDD 过程中有可能会遇到的各种障碍,我们都已经有了了解,并且知道了该如何应对。我们也知道了如何把代码放在该放的位置,用测试驱动出合理的组件树和状态管理架构。

可以说,一切都变得简单了起来,一切也都变得更容易测试了。

不过,千万注意,这些都不是重点!

重点是什么?重点是你的业务逻辑,重点是你的代码质量。我们有这么多的测试方法和测试准备,其实都是为了把主要精力,都放到业务逻辑和代码质量上,在测试的保护下持续重构,不断得改善你的代码。这些都是技能,不是靠学,而是靠练的。

所以,一句话总结重点:用 TDD 的方法,写出高质量的业务逻辑代码。

上一页任务 4:简化 Redux 项目结构下一页附录 1:什么才是真正的 RESTful 架构?

最后更新于5年前