软件工程技术丛书:软件测试的艺术(原书第3版) pdf
内容简介
《软件工程技术丛书:软件测试的艺术(原书第3版)》从第1版付梓到现在已经30余年,是软件测试领域的经典著作。本书结构清晰、讲解生动活泼,简明扼要地展示了久经考验的软件测试方法和智慧。
软件工程技术丛书:软件测试的艺术(第3版)以一次自评价测试开篇,从软件测试的心理学和经济学入手,探讨了代码检查、走查与评审、测试用例的设计、模块(单元)测试、系统测试、调试等主题,以及极限测试、互联网应用测试等高级主题,全面展现了作者的软件测试思想。第3版在前两版的基础上,结合软件测试的新发展进行了更新,覆盖了可用性测试、移动应用测试以及敏捷开发测试等内容。
《软件工程技术丛书:软件测试的艺术(原书第3版)》适合软件开发人员、IT项目经理等相关读者阅读,还可以作为高等院校计算机相关专业软件测试课程的教材或参考书。
作者简介
Glenford J. Myers ,IBM系统研究所前高级研究员,同时还是RadiSys公司的创始人和前CEO。
Tom Badgett,曾经主管大型企业软件开发团队,已出版超过60本关于计算机软件和硬件的技术书籍,同时他还是PcJr,Digital News等主流计算机杂志的技术编辑。
Corey Sandler ,计算机新闻的先锋,他曾经负责Gannett Newspapers 和the Associated Press的技术部分以及之后成为Pc Magazine的一任主编。他同时还是Digital News(针对DEC小型机的一份报纸)的编辑创始团队成员,他著作等身,目前已经出版了超过150本书籍,覆盖了从计算机到商业以及很多其他领域。
目录
译者序
序言
前言
第1章 一次自评价测试
第2章 软件测试的心理学和经济学
2.1 软件测试的心理学
2.2 软件测试的经济学
2.2.1 黑盒测试
2.2.2 白盒测试
2.3 软件测试的原则
2.4 小结
第3章 代码检查、走查与评审
3.1 代码检查与走查
3.2 代码检查
3.2.1 代码检查小组
3.2.2 检查议程与注意事项
3.2.3 对事不对人,和人有关的注意事项
3.2.4 代码检查的衍生功效
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.2 黑盒测试
4.2.1 等价划分
4.2.2 一个范例
4.2.3 边界值分析
4.2.4 因果图
4.3 错误猜测
4.4 测试策略
4.5 小结
第5章 模块(单元)测试
5.1 测试用例设计
5.2 增量测试
5.3 自顶向下测试与自底向上测试
5.3.1 自顶向下的测试
5.3.2 自底向上的测试
5.3.3 比较
5.4 执行测试
5.5 小结
第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.1 0安装测试
6.2.1 1可靠性测试
6.2.1 2可恢复性测试
6.2.1 3服务/可维护性测试
6.2.1 4文档测试
6.2.1 5过程测试
6.2.1 6系统测试的执行
6.3 验收测试
6.4 安装测试
6.5 测试的计划与控制
6.6 测试结束准则
6.7 独立的测试机构
6.8 小结
第7章 可用性(或用户体验)测试
7.1 可用性测试基本要素
7.2 可用性测试流程
7.2.1 测试用户的选择
7.2.2 需要多少用户进行测试
7.2.3 数据采集方法
7.2.4 可用性调查问卷
7.2.5 何时收工,还是多多益善
7.3 小结
第8章 调试
8.1 暴力法调试
8.2 归纳法调试
8.3 演绎法调试
8.4 回溯法调试
8.5 测试法调试
8.6 调试的原则
8.6.1 定位错误的原则
8.6.2 修改错误的技术
8.7 错误分析
8.8 小结
第9章 敏捷开发模式下的测试
9.1 敏捷开发的特征
9.2 敏捷测试
9.3 极限编程与测试
9.3.1 极限编程基础
9.3.2 极限测试:概念
9.3.3 极限测试的应用
9.4 小结
第10章 互联网应用测试
10.1 电子商务的基本结构
10.2 测试的挑战
10.3 测试的策略
10.3.1 表示层的测试
10.3.2 业务层的测试
10.3.3 数据层的测试
10.4 小结
第11章 移动应用测试
11.1 移动环境
11.2 测试面临的挑战
11.2.1 移动设备多样性
11.2.2 运营商网络基础设施
11.2.3 脚本编程
11.2.4 可用性测试
11.3 测试方法
11.3.1 真机测试
11.3.2 基于模拟器的测试
11.4 小结
附录A极限编程示例程序
附录B小于1000的素数
感悟与笔记
集成测试的目的是将模块的功能与定义模块的功能规格说明或接口规格说明进行比较。从而揭示出模块与规格说明存在着矛盾。
模块的规格说明和源代码。(输入输出参数和模块的功能)
使用白盒的测试方法分析逻辑结构,然后使用黑盒测试方法来设计测试用例。
第一步要列举出程序中所有的条件判断。
测试是为发现错误而执行程序的过程。
代码检查,走查以及可用性测试是三种主要的人工测试方法。
常见的编码错误:
变量是否都已声明。数组下标是否越界。是否被0除。是否每个循环都中止了,文件是否在使用前打开。形参的数量是否等于实参的数量。全局变量的定义在模块间是否一致。
代码走查是测试人员带着测试用例,在人脑中进行推演测试用例。
代码检查是在会议中检查代码中的错误。
同行评审是匿名的对程序进行评审。
白盒测试包含代码检查,代码走查,桌面检查和同行评审。
测试用例的设计
软件测试中最重要的因素就是设计和生成有效的测试用例。
穷举的白盒和黑盒测试都是不可能的。将这两种测试的要素组合起来得到一种合理的测试策略。
黑盒测试:等价类划分,边界值分析,因果图分析,错误猜测
白盒测试:语句覆盖,判定覆盖,条件覆盖,判定/条件覆盖,多重条件覆盖。
我们推荐的步骤是先使用黑盒测试方法来设计测试用例。然后使用白盒测试方法来补充测试用例。
白盒测试
1)逻辑覆盖测试
语句覆盖:将程序中的每条语句至少执行一次。
判定覆盖:每条分支路径都至少遍历一次。
等价类划分的两个步骤:1确定等价类 2 生成测试用例。根据输入条件确定等价类。正确的输入是一个有效等价类。而对有效等价类取非的结果便是无效等价类。
边界值分析需要选择一个或多个元素,以便等价类的每个边界都经过一次测试。
节后找工作我就是自己是在职的。免得他们因为照顾孩子和一年没有上班为理由拒绝我。等到入职的时候,我就说自己的离职证明丢了。如果他们北京调查,那我只有自认倒霉了。说谎是有风险的。收益就是他们不会因为我一年没有上班而不录取我。
因果图法:输入条件的组合
QTP录制
系统测试并非是测试整个系统或程序功能的过程。
外部规格说明不能作为获得系统测试用例的基础,否则就破坏了系统测试的目标。
会员免费下载
链接:https://pan.baidu.com/s/1Caia2tea5xEhLfHp9ubD-g
提取码: ****** 查看
成为本站VIP会员即可无限下载。 请先点击百度网盘,看资源是否还在,不在请点击链接通知站长补资源。
资源标签点击标签可查看对应分类的资源