软件测试入行容易进阶难。在持续交付体系背景下,要成为测试开发高手意味着非常系统综合的知识储备。广泛阅读经典好书是快速成长的必要方式。
霍格沃兹测试学院重点推荐几本测试经典好书以及必读清单。文末加入测试开发读书群,一起交流探讨!
测试开发从入门到进阶经典书籍
【测试入门基础】
夯实软件测试基础技术和理论知识,以及 Linux/Python/Java 编程技能;
- 《软件测试》https://book.douban.com/subject/1801050/
- 《鸟哥的 Linux 私房菜》https://book.douban.com/subject/30359954/
- 《Head First Python》https://book.douban.com/subject/10561367/
- 《Head First Java》https://book.douban.com/subject/2000732/
【测试技术】
深入理解计算机系统,让各种测试技术更好的落地;
- 《深入理解 Java 虚拟机》https://book.douban.com/subject/24722612/
- 《移动 App 性能评测与优化》移动App性能评测与优化 (豆瓣)
- 《性能之巅:洞悉系统、企业与云计算》https://book.douban.com/subject/26586598/
【代码分析】
测试左移,可以深入代码层面,保证研发阶段的软件质量;
- 《Head First 设计模式》Head First 设计模式(中文版) (豆瓣)
- 《重构:改善既有代码的设计》https://book.douban.com/subject/4262627/
- 《不测的秘密:精准测试之路》不测的秘密:精准测试之路 (豆瓣)
【测试专家必读】
测试右移,可以参与配置部署,打造持续测试/持续交付体系,并全流程监控发布后的应用质量。
- 《Google 测试之道》https://book.douban.com/subject/25742200/
- 《持续交付:发布可靠软件的系统方法》https://book.douban.com/subject/6862062/
- 《人月神话》https://book.douban.com/subject/2230248/
- 《凤凰项目:一个IT运维的传奇故事》https://book.douban.com/subject/34820436/
除了以上几本作优先推荐,也附上过往整理的测试经典书单(由测试专家 @刘晓光 老师做简要点评),也欢迎大家在评论区留言推荐!
附录 -「测试开发工程师必读好书清单」V1.0
测试理论与实践
- 《软件测试经验与教训》https://book.douban.com/subject/1139061/
如果只让推荐一本书,推荐这一本。书由很多看似零散的小知识点组成,但是字字珠玑。真正做过2年~20年测试的人,拿起它来,每一条和自己的工作做对照,都会有共鸣或者”原来如此“的感受。工作经验越多,体会越深,是一本常看常新,并且能够一直指导你的书。从某种意义上,它教会测试人员的是“思辨思维”,这才是最重要的财富。
- 《有效软件测试:提高测试水平的 50 条建议》有效软件测试 (豆瓣)
跟《软件测试经验与教训》一样是一部分实战很强的总结类书籍,我觉得也可以列入经典。推荐阅读的时候同自己的工作一条一条做对照,肯定会有很深体会。(里边的一些观点也许你不同意,但是,能够促进你思考就是好事情)。
- 《软件测试基础教程》软件测试基础教程 (豆瓣)
如果你入行不深,想从最基本的地方补一下测试理论。这本书无疑是相当合适的教材。看过很多书,ISTQB 系列还是最成体系化,内容也最好的书之一。
- 《Google 测试之道:像 Google 一样进行软件测试》https://book.douban.com/subject/25742200/
Google 大牛 James A. Whittaker 分享测试实践经验,开拓视野、提升水平必读经典好书,引发很多关注讨论。
- 《探索吧!深入理解探索式软件测试》探索吧!深入理解探索式软件测试 (豆瓣)
近些年难得的测试好书。这本书中对探索式软件测试的定义,作用,局限性和实施方法可能都是最好的。就算不是做纯粹的 ET,这本书的很多内容都能直接帮助你提高测试质量。强烈推荐。
- 《实例化需求:团队如何交付正确的软件》https://book.douban.com/subject/11611022/
每个测试人员都值得一读(应该推荐团队所有成员读),你绝对会眼前一亮并说:太棒了!就该这么干!书的最高境界是一个理想的“活文档系统”,实际上这很难完全实现,但里边的东西每实现一部分,测试的效果就会提高一部分,团队离失败就会远一点。
- 《Scrum 要素》 https://book.douban.com/subject/20507350/
近年来,国内的团队都在做敏捷转型。所以很多测试人员都会遇到在敏捷团队工作的经历。敏捷实施给软件人员带来的冲击还是很大的,过程中我们也听到了各种声音。Scrum 元素以很多小故事的形式讲述了敏捷团队如何工作,非常实用,测试人员值得一读。
- 《海盗派测试分析:MFQ & PPDCS》海盗派测试分析:MFQ&PPDCS (豆瓣)
国内资深测试专家邰晓梅老师关于测试思维的书,书中的知识其实是国内很多测试人员的能力短板。推荐阅读。
- 《全程软件测试(第3版)》https://book.douban.com/subject/30456957/
国内资深测试专家朱少民老师关于系统流程、测试方法理论的书,书中的知识其实是国内很多测试人员的能力短板。推荐阅读。
性能测试
- 《性能之巅:洞悉系统、企业与云计算》https://book.douban.com/subject/26586598/
这本书其实不是专门写给测试人员的。但是如果想做好性能测试,强力推荐这本书。如果你能够全部读懂(全部读懂需要一些功力),性能测试对你来说会是小菜一碟。
-
《应用程序性能测试的艺术》应用程序性能测试的艺术 (豆瓣)
-
《软件性能测试过程详解与案例剖析》软件性能测试过程详解与案例剖析 (豆瓣)
以上两本书,一本外国人写的,一本是国人段念写的。主要告诉你性能测试如何来做,为什么要这么做,还有评判准则,还有很好的案例。如果真正的做性能测试,推荐一定要读这两本,因为这是在讲方法论的东西,没有方法论指导,你就不知道怎么建模,怎么设计场景,怎么评判测试结果。
另外,如果性能测试做得比较深入了,其实可以看相关的开发书籍,比如架构相关的书,数据库管理、调优,JVM 调优,Web 服务器管理、调优,高性能程序设计、调优等。对被测物理解越深,性能测试才能越深入。这方面的书可以自行根据关键字进行搜索。
安全测试
- 《渗透测试实践指南:必知必会的工具与方法》https://book.douban.com/subject/20366359/
最好的渗透测试入门书,也是一本目录,可以由它打开安全测试之门。
自动化测试
- 《自动化测试最佳实践》自动化测试最佳实践 (豆瓣)
这是一本案例教学的书。里边有几十个例子,其中一半的例子非常有参考价值。
自动化要做好至少要有4点:合适的技术,合适的策略,合适的团队,合适的时机。技术对于自动化实施成功充其量只占到四分之一。
书里讲了很多技术之外的东西。真正做自动化实施的同学读了肯定会有很多感触。如果是初学者,建议你先买了放着,经过一两个失败的项目(没有非常好的工程师带,没有好的团队,通常第一次实施肯定是失败的)后再反过来读。另外《测试之美》里边也有几章是自动化测试相关的案例,值得一看。
AI 测试与大数据测试
- 《机器学习测试入门与实践》《机器学习测试入门与实践(异步图书出品)(异步图书出品)》(艾辉)【摘要 书评 试读】- 京东图书
编程语言与开发技能
推荐几本测试开发工程师最常用的 Java 和 Python 的入门和高级经典书目,以及算法、Linux 基础技能、SQL、正则表达式、MySQL 数据库、以及最流行的 Spring 框架好书,经典不多说。
- 《Effective Java(第3版)》https://book.douban.com/subject/30412517/
- 《Java编程思想 (第4版)》https://book.douban.com/subject/2130190/
- 《Python 核心编程(第三版)》https://book.douban.com/subject/26801374/
- 《流畅的 Python》https://book.douban.com/subject/27028517/
- 《算法(第4版)》算法(第4版) (豆瓣)
- 《鸟哥的 Linux 私房菜》https://book.douban.com/subject/30359954/
- 《SQL 必知必会》https://book.douban.com/subject/24250054/
- 《正则表达式必知必会》https://book.douban.com/subject/26285406/
- 《高性能 MySQL》高性能MySQL(第3版) (豆瓣)
- 《Spring 揭秘》https://book.douban.com/subject/3897837/
微服务、DevOps、持续交付
随着微服务和 DevOps 的流行,持续集成、持续交付的概念越来越被各个开发团队所接受,良好的测试是持续交付能够真正实现的重要基石,这是每个测试人员都应该掌握的知识(起码从概念上能够掌握,并且能够 do your part)。
推荐几本经典书籍,信息量比较大,对于平时只做系统测试的同学来说可能很难懂,但是建议啃一下,慢慢消化里边的一些知识,在读的过程中多与开发人员,SQA,产品人员,运维人员交流。
- 《微服务设计》https://book.douban.com/subject/26772677/
- 《DevOps 实践指南》 https://book.douban.com/subject/30186150/
- 《持续交付1.0:发布可靠软件的系统方法》https://book.douban.com/subject/6862062/
- 《持续交付2.0:业务引领的DevOps精要》https://book.douban.com/subject/30419555/
软件工程
大牛巨作,值得每个有追求的程序员学习,经典不多说。
- 《软件开发心理学》https://book.douban.com/subject/1141154/
- 《Head First 设计模式》Head First 设计模式(中文版) (豆瓣)
- 《代码整洁之道》https://book.douban.com/subject/4199741/
- 《架构整洁之道》https://book.douban.com/subject/30333919/
- 《重构:改善既有代码的设计》https://book.douban.com/subject/4262627/
- 《人月神话》https://book.douban.com/subject/26358448/
通用软技能
程序员在技术之外的软技能可能才是决定工作和生活幸福度的关键,包括身体健康,健康成熟的心态,团队协作能力,良好的沟通方式和技巧,高效能工作习惯,职业生涯规划能力等等,经典不多说。推荐阅读。
- 《程序员健康指南》https://book.douban.com/subject/25981248/
- 《软技能——代码之外的生存指南》https://book.douban.com/subject/26835090/
- 《高效能人士的 7 个习惯》https://book.douban.com/subject/26284789/
- 《金字塔原理》https://book.douban.com/subject/4882120/
- 《学会提问》https://book.douban.com/subject/20428922/
- 《非暴力沟通》https://book.douban.com/subject/3533221/
- 《深度工作:如何有效使用每一点脑力》https://book.douban.com/subject/27056409/
管理技能
从技术到管理,是一个艰巨的挑战,从思维方式到管理技巧,都需要刻意学习磨炼。推荐几本好书,经典不多说。
在学习管理类书籍外,也建议对比琢磨各大公司内部组织文化和管理流程,相信会有启发和收获。
- 《成为技术领导者》https://book.douban.com/subject/26419762/
- 《赢》https://book.douban.com/subject/1313124/
- 《格鲁夫给经理人的第一课》https://book.douban.com/subject/24700126/
- 《你的灯亮着吗?:发现问题的真正所在》https://book.douban.com/subject/25772550/
- 《管理团队:成败启示录》https://book.douban.com/subject/26981179/
- 《团队角色:在工作中的应用》https://book.douban.com/subject/27187174/
最后要说的是:尽信书不如无书。很多时候光看书不能解决具体问题。读书和工作实践相互促进才能发挥价值。书的最大作用就是启迪你!
加入霍格沃兹「测试工程师读书交流群」,结识书友,共同交流,一起进步!
「测试开发读书交流群」福利
- 各种形式读书小组学习活动;
- 测试大咖拆解点评经典好书;
- 抽奖赠书/现金红包等福利;
加小助手微信,回复「读书」入群