软件测试的艺术(原书第2版)(软件工程技术丛书·软件测试系列)
分類: 图书,计算机与互联网,软件工程及软件方法学,软件工程理论,
品牌: 梅尔斯
基本信息·出版社:机械工业出版社
·页码:122 页
·出版日期:2006年
·ISBN:7111173198
·条形码:9787111173199
·包装版本:2006-01-01
·装帧:平装
·开本:16开
·丛书名:软件工程技术丛书·软件测试系列
产品信息有问题吗?请帮我们更新产品信息。
内容简介《软件测试的艺术》(原书第2版)绝对的软件测试经典!作者提出了“测试是为发现错误而执行程序的过程”、“测试的目标是建立‘软件做了其应该做的,未做其不应该做的’信心”等观点,与众不同。一本“活”了25年的书,自有它的道理,请慢慢体会。
作者简介梅尔斯,Spectrum Signals的现任主管,IBM系统研究院前高级成员,同时还是RadiSys有限公司的前任CEO和创始人。
媒体推荐前言
在本书1979年第1版出版的时侯,有一条著名的经验,即在一个典型的编程项目中,软件测试或系统测试大约占用50%的项目时间和超过50%的总成本。 25年后的今天,同样的经验仍然成立。现在出现了新的开发系统、具有内置工具的语言以及习惯于快速开发大量软件的程序员。但是,在任何软件开发项目中,测试依然扮演着重要角色。 在这些事实面前,读者可能会以为软件测试发展到现在不断完善,已经成为一门精确的学科。然而实际情况并非如此。事实上,与软件开发的任何其他方面相比,人们对软件测试仍然知之甚少。而且,软件测试并非热门课题,本书首次出版时是这样,遗憾的是,今天仍然如此。现在有很多关于软件测试的书籍和论文,这意味着,至少与本书首次出版时相比,人们对软件测试这个主题有了更多的了解。但是,测试依然是软件开发中的“黑色艺术”。 这就有了更充足的理由来修订这本关于软件测试艺术的书,同时我们还有其他一些动机。在不同的时期,我们都听到一些教授和助教说:“我们的学生毕业后进入了计算机界,却丝毫不了解软件测试的基本知识,而且在课堂上向学生介绍如何测试或调试其程序时,我们也很少有建议可提供。” 因此,本书再版的目的与1979年时一样:填充专业程序员和计算机科学学生的知识空缺。正如书名所蕴涵的,本书是对测试主题的实践探讨,而不是理论研究,连同了对新的语言和过程的探讨。尽管可以根据理论的脉络来讨论软件测试,但本书旨在成为实用且“脚踏实地”的手册。因此,很多与软件测试有关的主题,如程序正确性的数学证明都被有意地排除在外了。 本书第1章介绍了一个供自我评价的测试,每位读者在继续阅读之前都须进行测试。它揭示出我们必须了解的有关软件测试的最为重要的实用信息,即一系列心理和经济学问题,这些问题在第2章中进行了详细讨论。第3章探讨的是不依赖计算机的代码走查或代码检查的重要概念。不同于大多数研究都将注意力集中在概念的过程和管理方面,第3章则是从技术上“如何发现错误”的角度来进行探讨。 聪明的读者都会意识到,在软件测试人员的技巧中最为重要的部分是掌握如何编写有效测试用例的知识,这正是第4章的主题。本书第5章和第6章分别探讨了如何测试单个模块或子程序及测试更大的对象,而第7章则介绍了一些程序调试的实用建议,第8章讨论了极限编程和极限测试的概念,第9章介绍了如何将本书其他章节中详细讨论的软件测试的知识运用到Web编程,包括电子商务系统中去。 本书面向三类主要的读者。尽管我们希望本书中的内容对于专业程序员而言不完全是新的知识,但它应增强专业人员对测试技术的了解。如果这些材料能使软件人员在某个程序中多发现一个错误,那么本书创造的价值将远远超过书价本身。第二类读者是项目经理,因为本书中包含了测试过程管理的最新的、实用的知识。第三类读者是计算机科学的学生,我们的目的在于向学生们展示程序测试的问题,并提供一系列有效的技术。我们建议将本书作为程序设计课程的补充教材,让学生在学习阶段的早期就接触到软件测试的内容。
编辑推荐《软件测试的艺术》(原书第2版)成功、有效地进行软件测试的实用策略和技术:
基本的测试原理和策略 验收测试
程序检查和走查 安装测试
代码检查 模块(单元)测试
错误列表 测试规划与控制
同行评分 独立测试机构
黑盒、白盒测试 调试原理
错误猜测 错误分析
自顶向下与自底向上测试 极限测试
高级测试 测试因特网应用系统
功能和系统测试 电子商务体系结构的高级测试
目录
第1章 一次自评价测试
第2章 软件测试的心理学和经济学
2.1 软件测试的心理学
2.2 软件测试的经济学
2.2.1 黑盒测试
2.2.2 白盒测试
2.3 软件测试的原则
2.4 小结
第3章 代码检查、走查与评审
3.1 代码检查与走查
3.2 代码检查
3.3 用于代码检查的错误列表
3.3.1 数据引用错误
3.3.2 数据声明错误
3.3.3 运算错误
3.3.4 比较错误
3.3.5 控制流程错误
3.3.6 接口错误
3.3.7 输入/输出错误
3.3.8 其他检查
3.4 代码走查
3.5 桌面检查
3.6 同行评分
3.7 小结
第4章 测试用例的设计
4.1 白盒测试
4.1.1 逻辑覆盖测试
4.1.2 等价划分
4.1.3 一个范例
4.1.4 边界值分析
4.1.5 因果图
4.2 错误猜测
4.3 测试策略
第5章 模块(单元)测试
5.1 测试用例设计
5.2 增量测试
5.3 自顶向下测试与自底向上测试
5.3.1 自顶向下的测试
5.3.2 自底向上的测试
5.3.3 比较
5.4 执行测试
第6章 更高级别的测试
6.1 功能测试
6.2 系统测试
6.2.1 能力测试
6.2.2 容量测试
6.2.3 强度测试
6.2.4 易用性测试
6.2.5 安全性测试
6.2.6 性能测试
6.2.7 存储测试
6.2.8 配置测试
6.2.9 兼容性/配置/转换测试
6.2.10 安装测试
6.2.11 可靠性测试
6.2.12 可恢复性测试
……
第7章 调试
第8章 极限测试
第9章 测试因特网应用系统
附录A 极限测试应用程序样例
附录B 小于1000的素数
词汇表
……[看更多目录]
序言在本书1979年第1版出版的时侯,有一条著名的经验,即在一个典型的编程项目中,软件测试或系统测试大约占用50%的项目时间和超过50%的总成本。 25年后的今天,同样的经验仍然成立。现在出现了新的开发系统、具有内置工具的语言以及习惯于快速开发大量软件的程序员。但是,在任何软件开发项目中,测试依然扮演着重要角色。在这些事实面前,读者可能会以为软件测试发展到现在不断完善, 已经成为一门精确的学科。然而实际情况并非如此。事实上,与软件开发的任何其他方面相比,人们对软件测试仍然知之甚少。而且,软件测试并非热门课题,本书首次出版时是这样,遗憾的是,今天仍然如此。现在有很多关于软件测试..