软件测试书籍
转载:http://www.cnblogs.com/liangshi/archive/2011/03/07/1973525.html
列表格式为:图书分类、中文书名、英文书名、作者。排名不分先后,用红色标记出我推荐的书籍。
测试入门
软件测试(第2版)
Software Testing (2e), Ron Patton
一本测试入门的好书,较全面地介绍了各种测试领域和方法,为测试新手提供了正确的观念和宽泛的基础。
软件测试的艺术(第2版)
The Art of Software Testing (2e), Glenford J. Myers, Corey Sandler, Tom Badgett, Todd M. Thomas
一本“久经考验”的测试经典:1979年,第一版面试;25年后,第二版登场。平心而论,有些观点已经不能直接应用在测试实践中,但是仔细品味仍有所收获。毕竟,这是一本需要思考的书,而不是操作手册。
软件测试实战--测试Web MSN
蔡为东
以Web MSN为测试对象,形象生动地介绍了针对图形界面的黑盒测试技术,有很强的实践性。围绕一个实例,全面地的介绍各种测试方法,是此书区别于其他测试书籍的一大特色。附文《胶着》是作者一段开发经历的回顾与小结,有笑有泪,仅凭此文便值回书资。
软件测试工程师面试指导
蔡为东
面向初学者,介绍了软件测试行业、测试工程师素质要求、基本测试技术、求职策略、面试技巧、典型试题,对于测试新手或迈向测试行业的朋友有较高的参考价值。此书还收录了一些对读者来信的回复,内容涉及职业规划、大学生就业、测试学习、测试实践等,针对当前常见的困惑,做出了谨慎且深思熟虑的回答。附文《我在微软做软件测试外包》对于了解微软中国的流程与文化很有参考价值。
Essential Software Test Design
Torbjrn Ryber
该书专注于测试设计,深入浅出讲解了所有测试人员都需要掌握的基本测试技术。全书言简意赅、条理清晰、案例翔实,为测试实践打下了坚实基础。测试专家James Bach受邀编写了第6章“探索式测试解析”(Exploratory Testing Explained),对于理解探索式测试的思想和方法很有帮助。
通用测试技术
计算机软件测试(第2版)
Testing Computer Software (2e), Cem Kaner, Jack Falk, Hung Quo Nguyen
一本值得反复参考的好书,"The bestselling software testing book of all time" 的美誉绝非浪得虚名。作者将多年的实践经验用平实的语言娓娓道来,内容涉及测试技术、测试管理、开发流程、思考方法、实践模式,可谓是一本测试典籍。部分内容看似有些过时,但是其思想和方法仍旧有很高的借鉴价值。
Black Box Software Testing
Cem Kaner
由美国国家科学基金(National Science Foundation)资助的、Cem Kaner教授主持的黑盒测试在线课程。免费提供了详尽的课程幻灯片、学习资料和教学视频,系统性地讲授了黑盒测试的方法体系和关键方法,具有很高的参考价值。
Rapid Software Testing
James Bach, Michael Bolton
测试专家James Bach与Michael Bolton常年举办Rapid Software Testing培训,为许多测试人员理解并实施探索式测试提供了有益的起点。James Bach的网站提供了培训幻灯片和学习资料,以启发式测试策略模型(Heuristic Test Strategy Model)为核心,详细介绍了探索式测试的方方面面,值得深入学习。
微软的软件测试之道
How We Test Software at Microsoft, Alan Page, Ken Johnston, Bj Rollison
微软的资深测试者审视微软当前的测试方法,并展望软件测试的未来发展。缺点是没有结合Windows或Office这样的著名且复杂的产品,详细讨论具体项目的具体技术。优点是提供了许多小故事,讲述了Windows、Office、Live等产品开发中的点滴。从经验传承、启发思路的角度,这些故事是全书的精华,具有很高的参考价值。
James A. Whittaker, Jason Arbon, Jeff Carollo
谷歌的测试总监和测试工程师介绍谷歌的测试团队、测试管理、测试方法和测试人员职业发展。优点是介绍了Chrome、Chrome OS、Google+和GMail等世界级产品的测试实践,并富有前瞻性地讨论了软件测试的未来发展。缺点是没有讨论谷歌的核心产品搜索引擎,没有介绍谷歌如何处理海量业务数据及其测试之道,颇让人遗憾。
敏捷测试:测试人员与敏捷团队的实践指南
Agile Testing: A Practical Guide for Testers and Agile Teams, Lisa Crispin, Janet Gregory
敏捷测试专家全方位讲解敏捷测试的专著,体系完整,论述周详,有正本清源、答疑解惑之功效。其中,“测试自动化金字塔”、“敏捷测试四象限”等思想很有启发性。
Explore It!: Reduce Risk and Increase Confidence with Exploratory Testing
Elisabeth Hendrickson
作者以基于测程的测试管理(session based test management)为基础,介绍了探索式软件测试的概念和方法。全书行文流程,生动地介绍了一批实用的测试方法,对于“测程”的灵活应用尤为精彩。
The Little Black Book On Test Design
Rikard Edgren
该书是作者十余年测试经验的总结与升华,面向有经验的测试人员,以测试学习、测试分析、测试设计和测试执行为主题提供了大量的启发式方法,具有较高的参考价值。此外,该书的参考文献非常丰富,为深入学习提供了良好的素材。
测试有道:微软测试技术心得
梁博, 许珊, 徐歆恺
内容由一系列技术点组成,每一个点都有精要的描述和作者的心得体会,力图以小搏大,以精粹胜广博。但是没有提供一个理论框架将这些点有机地联系起来,读起来有只见树木、不见深林之感,也缺少“授人以渔”的独到见解。最大优点是介绍了一批免费且实用的工具,可以放在案头备查。
软件测试基础:方法与度量
Software Testing Fundamentals: Methods and Metrics, Marnie L. Hutcheson
以风险分析为核心,讨论了测试计划、测试组织和测试设计。其中,关于“测试价值的可说明性”和“利用Office Suite来撰写、管理测试计划”的内容有启发性。适合有一定工作经验的测试人员参考。
软件测试(第2版)
Software Testing A Craftsman's Approach (2e), Paul C. Jorgensen
将理论与工艺结合在一起的测试教科书。比较严谨地讨论了软件测试的基础理论,适合软件测试研究者研读。
面向对象的软件测试
A Practical Guide to Testing Object Oriented Software, John D. McGregor, David A. Sykes
介绍了面向对象软件测试的基本思路和方法。第7章“测试类的层次结构”比较有启发性,讨论了针对继承的测试设计和组织,相关内容在其他测试书籍中并不多见。
软件测试技术大全:测试基础、流行工具、项目实战
陈能技
该书由多位作者共同撰写,内容涉及测试理念、测试技术、测试开发、测试自动化、测试管理和常见的测试工具,不愧“测试大全”的书名。有些内容失之于粗糙,一些论述也不够严谨,缺乏参考文献更是此书的硬伤。瑕不掩瑜,此书理论和实践结合紧密,仍值得测试工作者学习和思考。
测试管理
笑傲测试--软件测试流程方法与实施
魏伟
以小说为体裁的测试管理书籍。通过令狐冲和风清扬的对话,从一个逐渐成长的新人的角度,介绍了测试管理的点点滴滴。全书轻松幽默,全无技术读本的枯燥乏味。附录所收录的文章“从新鲜人到新仙人”对于行业新人颇有帮助。
步步为赢--软件测试管理全程实践
蔡为东
以“管理就是负责人”为核心,介绍作者担当测试领导的切身经验:自我管理、自我成长、编写测试计划、编写测试用例、执行测试、沟通、测试计划/用例评审、测试总结、员工管理、测试思想等。也适合第一线的测试工作者阅读,所涉及内容皆和他们的日常工作密切相关。
专项测试技术
软件安全测试艺术
The Art of Software Security Testing: Identifying Software Security Flaws, Chris Wysopal, Lucas Nelson, Dino Dai Zovi, Elfriede Dustin
软件安全测试的入门书,用很短的篇幅涵盖了软件安全测试的多个领域,为测试人员提供了模型、方法和工具。对于Threat Modeling的介绍很精彩,为进一步的行动提供了良好的理论与实践基础。
Web安全测试
Web Security Testing Cookbook: Systematic Techniques to Find Problems Fast, Paco Hope, Ben Walther
一本实践性很强的Web安全测试手册。从网络安全的角度,介绍了一批免费的网络通信分析、监控、修改、调试工具;以条目为组织,介绍了的测试方法或策略;以实践切入,穿插介绍理论知识,通过精心选材和组织,降低了Web安全测试的门槛。
探索式软件测试
Exploratory Software Testing: Tips, Tricks, Tours, and Techniques to Guide Test Design, James A. Whittaker
测试专家James Whittaker旗帜鲜明地捍卫手工测试,探讨如何用探索式测试来应对严峻的现实挑战。作者以隐喻“漫游”(Touring)为核心,提出了一套有助于探索式测试的测试方法。作者历任微软测试架构师和谷歌测试总监,其理念已经在微软和谷歌的测试产品中逐渐体现。
实用软件测试指南
How to Break Software: A Practical Guide to Testing, James A. Whittaker
软件测试专家编写的实战指南,指导测试人员从攻击的角度展开软件测试。介绍了一些实用的测试工具,对于压力测试、极限测试有较强的参考价值。
软件测试新技术与实践
于秀山, 于洪敏
介绍了组合测试技术在测试中的应用。适合组合测试研究者参考。
Web应用程序性能测试指南
Performance Testing Guidance for Web Applications, J. D. Meier, Carlos Farre, Prashant Bansode, Scott Barber, Dennis Rea
微软模式与实践(pattern & practices)团队的佳作,介绍了性能测试的正确观念、流程和实践。篇幅短小,内容深邃,值得在实践中反复参考和体会。
应用程序性能测试的艺术
The Art of Application Performance Testing: Help for Programmers and Quality Assurance, Ian Molyneaux
经验丰富的软件性能测试专家分享他的经验,内容包含性能测试的架构、模型、典型方法和结果分析。适合有一定经验的测试者参考。
How to Break Software: A Practical Guide to Testing
James A. Whittaker
知名测试专家的成名作,以“缺陷模式”(defect mode)为核心介绍了一批快速测试(quick test)方法。虽然部分内容略显陈旧,但是其思想和策略对于当下的软件测试仍旧颇有益处。
Tap Into Mobile Application Testing
Jonathan Kohl
探索式测试专家的力作,针对运行在智能手机和平板电脑之上的移动应用,提出了一组有针对性的漫游测试和情景测试方法。其中,针对真实使用情景挖掘测试想法的策略极具启发性,也值得其他领域的测试人员参考。
测试自动化
Experience of Test Automation:Case Studies of Software Test Automation
Dorothy Graham, Mark Fewster
面向有经验测试人员的测试自动化案例分析汇编。第0章是全书案例的经验总结,第1~28章是来自28个不同类型项目的测试自动化报告,第29章则提供了一组真实的测试故事。软件测试是语境驱动的,观察不同团队的实践,分析成败得失,可谓开卷有益。
.NET软件测试自动化之道
.NET Test Automation Recipes:A Problem-Solution Approach, James D. McCaffrey
该书讲解了在.NET平台上编写轻量级测试程序的实用技术。作者曾经在微软工作,该书与微软测试开发工程师的培训材料的契合度很高,实践性很强。对于Windows平台的测试工程师而言,此书的参考价值很高。
.NET软件测试指南
A Tester's Guide to .NET Programming, Randal Root, Ary Romero Sweeney
严格来说,这是一本以测试为目标的讲解.NET编程的书。内容浅显、涉猎面广,适合没有太多.NET开发经验的测试人员参考。
集成测试框架--用Fit进行敏捷软件测试
Fit for Developing Software: Framework for Integrated Tests, Rick Mugridge, Ward Cunningham
Fit是一种编写系统测试的测试框架,作为一种业务交流工具,它深刻地反映出敏捷软件开发的若干特质。此书由Fit之父亲自编写,不但可以了解Fit的方方面面,还能从中体会大师的感悟与实践。
互联网单元测试及实践
陈卫俊, 赵璨, 周磊, 陈洪
介绍了常见的单元测试框架,并结合具体项目讲解了单元测试的基本理论和技术。对于Web测试的新手,有较高的参考价值。
Visual Studio 2005 Team System软件测试专家教程
Professional Software Testing with Visual Studio 2005 Team System: Tools for Software Developers and Test Engineers
介绍如何利用Visual Studio 2005 Team System进行有效的单元测试、数据库测试、Web测试、负载测试和代码分析。以介绍概念和流程为主,适合新手快速上手。
.NET软件测试实战技术大全:测试基础、流行工具、典型案例
陈能技
系《软件测试技术大全》的.NET版,在内容的深度和价值上,皆不及前者。胜在专注于.NET和Windows平台上的测试自动化,介绍了多种测试技术和工具,覆盖面广,且切合实践。适合.NET平台上的新手参考。
经验总结
软件测试:经验与教训
Lessons Learned in Software Testing, Cem Kaner, James Bach, Bret Pettichord
值得反复研读的经典好书。Tom DeMacro的赞美——“这些经验中的任何一个,都抵得上这本书的价钱”,所言非虚。
完美软件--对软件测试的各种幻想
Perfect Software: And Other Illusions about Testing, Gerald M. Weinberg
该书没有介绍具体的软件测试技术,它讨论的是软件开发中的人、他们对测试的认知、软件测试的目的、实现目的的社会学和心理学上的探索。它试图建立正确的软件测试观念、协调的心理情绪和有效的思考方式。这些要素最终会决定在具体的项目中采用何种具体测试技术的组合。
测试之美
Beautiful Testing, Tim Riley, Adam Goucher
该书由27位测试实践者共同撰写,提供了22篇来自不同语境的测试实践小结。其“美感”来自于实践者之间的印证、启发、激励。这要求读者将自己的经验与思考带入阅读,与作者就更美的软件测试进行“对话”。
有效软件测试——提高测试水平的50条建议
Effective Software Testing: 50 Specific Ways to Improve Your Testing, Elfriede Dustin
测试领域的Effective C++,广受赞誉,所提供的50条经验有很强的实践指导意义。
软件测试求生法则
Surviving the Top Ten Challenges of Software Testing : A People-Oriented Approach, William E. Perry, Randall W. Rice
作者讨论了测试人员所面临的十大“人际挑战”。从具体案例出发,介绍了挑战的表现形式、产生根源、解决方法和可能遇到的问题。虽然,外企的文化氛围与中国企业有一定差别,但是分析问题、解决问题的思路仍值得借鉴。
赢在测试:中国软件测试先行者之道
蔡为东
介绍了一批测试先行者的个人经验的书。学习他人经验可以用较低的成本去扩大自己的体验,自然是他山之石可以攻玉,开卷有益。不过,个人经验非批判性地阅读与理解,不能有效,甚至有害,所以该书适合愿意学习且有能力学习的测试爱好者。不足是大部分被采访者都是管理者,没有真正的测试技术专家。
软件测试精要
董杰
作者分享他在测试领域的经验与思考,其热情和思辨跃然纸上。缺点是内容却有些散乱,即便是一章,其系统性也有些不足;对于测试工具背后的测试思想,挖掘得比较浅,没有上升到测试理论的高度。