测试驱动开发:入门、实战与进阶

测试驱动开发:入门、实战与进阶

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

学习测试驱动开发(TDD)的必备教程。

内容简介

开发者的水平需要靠代码来证明。无论你用的是哪种编程语言,都应该写出干净、优雅且整齐的代码。测试驱动开发(TDD)可以帮助你写出这种既易懂又漂亮的代码,这样的代码能够在以后的几个月乃至几年中稳定运行。在这本开发者的教程中,你能够学到如何用Go、JavaScript以及Python这三种语言来做测试驱动开发。

Saleem Siddiqui在书中会告诉你如何用单元测试引领开发工作,以解决业务领域中的复杂问题。这种测试驱动的编程方式会把需求划分成多个比较小的功能,并分别予以实现。无论使用哪种编程语言与编程框架,你都可以把本书中的知识运用到日常的编程工作中。

作者简介

作者萨利姆·西迪基(Saleem Siddiqui),软件开发者,他也参与培训、演讲和写作。他具有丰富的技术开发经验,在大大小小的团队中开发过医疗、零售、政务、财务以及制药等方面的软件。Saleem将在本书中分享自己过去的经验与教训,帮助大家避开他以前编写软件时犯的错误。

章节目录

版权信息

O'Reilly Media, Inc. 介绍

译者序

前言

第0章 简述如何配置开发环境

0.1 配置开发环境

0.2 小结

第一部分 入门

第1章 我们要解决的问题:Money

1.1 TDD的基本流程:红-绿-重构循环

1.2 我们要解决的是什么问题

1.3 第一个失败的测试

1.4 让测试通过

1.5 清理代码

1.6 提交变更

1.7 小结

第2章 通过Money实体支持多种货币

2.1 开始支持欧元

2.2 让代码遵循DRY原则

2.3 刚才不是说要遵循DRY原则吗?现在为什么要保留两个相似的测试

2.4 分而治之(实现除法)

2.5 清理代码

2.6 提交变更

2.7 小结

第3章 通过Portfolio实体支持投资组合

3.1 设计下一个测试

3.2 提交变更

3.3 小结

第二部分 模块化

第4章 关注点分离

4.1 测试代码与产品代码

4.2 模块化

4.3 去除冗余(消除重复)

4.4 小结

第5章 Go语言的包与模块

5.1 把代码分割到不同的包中

5.2 Go语言的模块

5.3 创建新包

5.4 封装

5.5 消除测试中的重复

5.6 提交变更

5.7 小结

第6章 JavaScript的模块

6.1 把代码划分成多个模块

6.2 认识JavaScript模块

6.3 改进测试

6.4 提交变更

6.5 小结

第7章 Python的模块

7.1 把代码划分成多个模块

7.2 消除测试中的重复

7.3 提交变更

7.4 小结

第三部分 功能与重新设计

第8章 求Portfolio的值

8.1 处理币种不同的Money

8.2 提交变更

8.3 小结

第9章 这种钱,那种钱

9.1 制作映射表以便查询汇率

9.2 提交变更

9.3 小结

第10章 错误处理

10.1 我们想把错误处理机制实现成什么样子

10.2 提交变更

10.3 小结

第11章 通过Bank实体重新设计

11.1 依赖注入

11.2 把所有实体汇聚起来

11.3 提交变更

11.4 小结

第四部分 收尾

第12章 掌握测试顺序

12.1 修改汇率

12.2 提交变更

12.3 小结

第13章 持续集成

13.1 核心概念

13.2 把实现持续集成所需的步骤串起来

13.3 提交变更

13.4 小结

第14章 回顾

14.1 代码是否具备良好的形象

14.2 代码是否确切地实现了目标

14.3 在编写代码的过程中有没有其他路可走

14.4 从三个维度分析代码

14.5 TDD过时了吗

14.6 全书总结

附录A 配置开发环境

A.1 网页版的REPL

A.2 IDE

A.3 针对各种语言安装必要的工具

附录B 三种语言简史

B.1 Go

B.2 JavaScript

B.3 Python

附录C 致谢

作者简介

封面简介

测试驱动开发:入门、实战与进阶是2023年由机械工业出版社出版,作者[美] 萨利姆·西迪基。

得书感谢您对《测试驱动开发:入门、实战与进阶》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Web全栈项目开发入门与实战 电子书
本书共26章,围绕着企业项目开发基本流程来设计,分为项目概述、前端开发和后端开发三个部分。项目概述部分一共有4章。第1章是项目需求设计,主要介绍该项目的项目背景和项目内容。第2章是业务模块介绍,围绕着项目内容展开介绍项目核心业务模块。第3章是业务流程图。通过office自带的Visio工具将各大业务流程以流程图的形式呈现。第4章是项目开发周期,介绍开发本项目需要花费的时间周期。前端开发部分一共有1
测试工程师Python开发实战 电子书
本书是为测试人员编写的Python开发实战指南,包含Python的核心知识点和实战案例,帮助测试人员快速掌握Python工具开发技能。本书共3篇:基础篇(第1章至第3章)介绍Python和PyCharm工具的安装与环境部署,并讲解日常实际工作中用到的Python基础知识点;专题篇(第4章至第6章)介绍Python开发时使用频度较高的常用技能如异常处理、日志处理、邮件处理等,高级技能如Kafka、R
FlutterApp开发:从入门到实战 电子书
本书系统讲解使用Flutter进行跨平台开发应具备的知识,包含丰富的代码示例与效果图片,组件功能一目了然。
Android开发进阶 电子书
阿里巴巴高级工程师、CSDN博客专家、畅销书作者撰写,百度、腾讯等专家推荐的精品图书 一本只有干货,绝无赘述的好书 结合作者多年开发经验的总结,把作者以前开发走过的坑和陷阱讲解出来,看了以后可以少走很多弯路,提升自己的开发能力很快,抓住开发的痛点和需求讲解内容,使读者阅读后很有成就感。 除了全面讲解了Android开发知识外,还对单元测试、代码规范、版本控制、重构、架构等重要知识点进行了讲解,使得读者在深入技术的同时开阔眼界,能够以更专业的方式设计应用软件,完成从只会实现功能的“码农”到软件工程师、设计师的过渡。
Flutter基础与实战:从入门到APP跨平台开发 电子书
本书旨在帮助读者快速入门Flutter、掌握Flutter开发技能,从而具备一定的Flutter跨平台开发能力。