软件测试方法与技术 / 软件工程专业核心课程系列教材
¥49.50定价
作者: 蔡建平、王安生等
出版时间:2015年8月
出版社:清华大学出版社
- 清华大学出版社
- 9787302339250
- 1-2
- 78208
- 16开
- 2015年8月
- 工学
- 软件工程
- TP311.5
- 计算机
- 本专科、高职高专
目录
第1部分软件测试基础篇
第1章软件与软件危机
1.1软件的概念
1.1.1软件特性
1.1.2软件种类
1.2软件危机
1.2.1软件危机原因分析
1.2.2软件危机现象
1.2.3避免软件危机的方法
1.3软件工程
1.3.1软件工程定义
1.3.2软件生命周期
1.3.3敏捷开发过程
习题
第2章软件测试基本概念
2.1软件测试概述
2.1.1软件测试发展史
2.1.2软件测试定义
2.1.3软件测试目的
2.1.4软件测试原则
2.1.5软件测试质量度量
2.1.6软件测试与软件开发各阶段的关系
2.2软件测试工作
2.2.1软件测试工作流程
2.2.2软件测试工具对测试工作的支持
2.2.3软件测试工作的几个认识误区
2.3软件测试职业
2.3.1软件测试职业发展
2.3.2软件测试人员应具备的素质
2.3.3软件测试的就业前景
习题
第3章生命周期软件测试方法
3.1生命周期测试的概念
3.1.1生命周期测试的工作划分
3.1.2生命周期测试的主要任务
3.1.3基于风险的软件测试方法
3.2生命周期各个阶段的测试要求
3.2.1需求阶段测试
3.2.2设计阶段测试
3.2.3编码阶段测试
3.2.4测试阶段
3.2.5安装阶段测试
3.2.6验收阶段测试
3.2.7维护阶段
3.3支持生命周期软件测试的工具
3.3.1全生命周期质量管理平台Panorama++
3.3.2应用生命周期管理系统HP ALM11
习题
第4章软件测试分类与分级
4.1软件测试分类
4.1.1计算机软件配置项
4.1.2基于CSCI的软件测试分类
4.2软件测试分级
4.2.1软件生命周期的测试分级
4.2.2软件测试中的错误分级及其应用
习题
第2部分软件测试方法与技术基础篇
第5章软件静态测试
5.1各阶段评审
5.1.1同行评审
5.1.2需求规格说明书的测试
5.2代码检查
5.2.1代码检查方法
5.2.2代码编程规范检查
5.2.3代码的自动分析
5.2.4代码结构分析
5.2.5代码安全性检查
5.3软件复杂性分析
5.3.1软件复杂性度量与控制
5.3.2软件复杂性度量元
5.3.3面向对象的软件复杂性度量
5.4软件质量模型
5.4.1软件质量概念
5.4.2软件质量分层模型
5.4.3软件质量度量与评价
5.5静态分析工具
5.5.1IBM Rational Logiscope RuleCheck/Audit介绍
5.5.2HP FortifySCA介绍
习题
第6章软件动态测试
6.1“白盒”测试
6.1.1逻辑覆盖
6.1.2路径测试
6.1.3数据流测试
6.1.4信息流分析
6.1.5覆盖率分析及测试覆盖准则
6.2“黑盒”测试
6.2.1等价类划分
6.2.2边界值分析
6.2.3因果图
6.2.4随机测试
6.2.5猜错法
6.3“灰盒”测试
6.3.1“灰盒”测试概念
6.3.2“灰盒”测试步骤与应用举例
6.4测试用例设计
6.4.1测试用例设计概念
6.4.2测试用例编写要素与模板
6.4.3测试用例的设计步骤
6.4.4测试用例分级
6.4.5软件测试用例设计的误区
6.5单元测试
6.5.1单元测试的意义
6.5.2单元测试的内容
6.5.3单元测试方法和步骤
6.6集成测试
6.6.1集成测试的概念
6.6.2集成测试方法
6.6.3集成测试过程
6.7确认测试
6.7.1确认测试基本概念
6.7.2确认测试过程
6.8系统测试
6.8.1系统测试概念
6.8.2系统测试中关注的重要问题
6.8.3系统测试的要求和主要内容
6.8.4系统测试设计
6.8.5系统测试手段
6.9动态测试工具介绍
6.9.1国产单元测试工具Visual Unit
6.9.2开源集成测试工具Selenium
6.9.3系统测试工具
习题
第3部分软件测试管理方法与技术篇
第7章软件缺陷与缺陷管理
7.1软件缺陷
7.1.1软件缺陷定义
7.1.2软件缺陷描述
7.1.3软件缺陷分类
7.1.4软件缺陷管理流程
7.2软件缺陷度量、分析与统计
7.2.1软件缺陷度量
7.2.2软件缺陷分析
7.2.3软件缺陷统计
7.3软件缺陷报告
7.3.1缺陷报告内容
7.3.2缺陷报告撰写标准
7.4缺陷管理工具
7.4.1TrackRecord(商用)
7.4.2ClearQuest(商用)
7.4.3Bugzilla(开源)
7.4.4BMS(国内商业软件)
7.4.5其他
习题
第8章软件测试过程及测试过程管理
8.1软件测试过程
8.1.1软件测试过程模型
8.1.2软件测试过程中的活动及内容
8.1.3软件测试过程度量
8.1.4软件测试过程成熟度
8.1.5软件测试过程改进
8.2软件测试过程管理
8.2.1软件测试过程管理的理念
8.2.2软件测试计划与测试需求
8.2.3软件测试设计和开发
8.2.4软件测试执行
8.2.5软件测试文档
8.2.6软件测试用例、测试数据与测试脚本
8.2.7软件测试过程中的配置管理
8.2.8软件测试过程中的组织管理
8.3测试过程管理工具
8.3.1HP Quality Center介绍
8.3.2北航软件所QESuite
8.3.3TestLink(开源免费)
习题
第4部分高级软件测试方法与技术篇
第9章软件测试自动化
9.1软件测试自动化概念
9.1.1自动化测试的定义
9.1.2适合于自动化测试的相关活动
9.1.3自动化测试的优点
9.1.4自动化测试的局限性
9.2软件测试自动化框架
9.2.1自动化测试框架概念
9.2.2常用的自动化测试框架
9.2.3基于API 测试的分布式测试框架
9.3自动化测试技术
9.3.1脚本技术
9.3.2录制/回放技术
9.3.3基于数据驱动的自动化测试技术
9.3.4基于关键字驱动的自动化测试技术
9.3.5基于测试预期的结果分析比较技术
9.4自动化测试工具应用举例
9.4.1测试中常用的自动化测试工具
9.4.2基于 STAF/STAX 的自动化测试框架
习题
第10章软件可靠性测试
10.1操作剖面与统计测试
10.2基于操作剖面的软件可靠性测试
10.2.1基于操作剖面的统计测试
10.2.2操作剖面的构造
10.2.3操作剖面的使用
10.2.4基于操作剖面的软件可靠性疲劳测试
10.2.5结论
10.3软件可靠性测试工具
习题
第11章软件安全性/软件安全测试
11.1软件安全性测试
11.1.1软件安全性概念
11.1.2软件安全性分析
11.1.3软件安全性测试方法与技术
11.2软件安全测试
11.2.1安全漏洞的概念
11.2.2网络安全相关技术
11.2.3解决软件安全问题的方法
11.2.4软件安全测试方法与技术
11.3应用软件安全性/安全测试工具
11.3.1IBM Rational AppScan
11.3.2JSky
11.3.3WebPecker
习题
第12章软件国际化与本地化测试
12.1软件国际化与本地化
12.1.1软件国际化及本地化概念
12.1.2常用字符集编码及UTF8
12.2软件本地化测试
12.2.1本地化之前的国际化测试
12.2.2软件本地化测试方法
习题
第13章面向对象软件测试
13.1面向对象程序设计语言对软件测试的影响
13.1.1信息隐蔽对测试的影响
13.1.2封装和继承对测试的影响
13.1.3集成测试
13.1.4多态性和动态绑定对测试的影响
13.2面向对象测试模型
13.2.1面向对象分析的测试
13.2.2面向对象设计的测试
13.2.3面向对象编程的测试
13.2.4面向对象的单元测试
13.2.5面向对象的集成测试
13.2.6面向对象的系统测试
13.2.7面向对象软件的回归测试
13.2.8基于UML的面向对象软件测试
13.3面向对象软件测试用例的设计
13.3.1基于故障的测试
13.3.2基于脚本的测试
13.3.3面向对象类的随机测试
习题
第14章客户端应用软件测试
14.1C/S、B/S应用模式概述
14.1.1C/S、B/S技术特点
14.1.2C/S和B/S的比较
14.1.3C/S与B/S的区别
14.2C/S系统测试
14.2.1C/S系统测试对传统测试的影响
14.2.2C/S 系统测试的目标
14.2.3C/S系统测试的内容和步骤
14.3B/S系统测试
14.3.1Web应用测试
14.3.2Web 应用性能测试方法
14.4SOA应用软件测试
14.4.1基于SOA的Web服务
14.4.2SOA应用测试
14.4.3Web服务测试
习题
第5部分典型应用软件测试
第15章移动应用软件测试
15.1移动应用测试的困难
15.2移动应用App测试方法和技术
15.2.1App测试概念
15.2.2移动App测试类型
15.2.3如何开展移动App测试
习题
第16章云应用软件测试
16.1云测试基本概念
16.1.1云测试特点
16.1.2云测试优点
16.2云测试方法和技术
16.2.1云环境中的测试和针对“云”的测试
16.2.2云测试抽象模型
16.2.3云测试现状及挑战
16.2.4云测试平台
习题
第17章游戏软件测试
17.1游戏软件测试基本概念
17.1.1游戏软件测试的特性
17.1.2常见的游戏软件错误
17.2游戏软件测试与游戏开发过程
17.2.1游戏开发过程
17.2.2游戏测试与开发过程的关系
17.3网络游戏测试
17.3.1网络游戏的平衡性测试
17.3.2魔兽世界的平衡性测试
17.3.3网络游戏的性能测试
17.3.4网络游戏的压力测试
17.4手机游戏测试
17.4.1手机游戏软件的测试内容
17.4.2手机游戏软件测试的自身特性
习题
第18章嵌入式软件测试
18.1嵌入式软件测试概念
18.1.1嵌入式软件开发及应用特点
18.1.2嵌入式软件测试问题及传统测试方法
18.1.3嵌入式软件测试策略及测试流程
18.2嵌入式软件测试工具
18.2.1嵌入式软件测试的典型工具
18.2.2嵌入式软件测试工具举例
18.2.3传统测试工具的局限性
18.3全数字仿真测试方案
18.3.1全数字仿真的概念
18.3.2北京奥吉通的CRESTS/ATAT和CRESTS/TESS介绍
习题
第1章软件与软件危机
1.1软件的概念
1.1.1软件特性
1.1.2软件种类
1.2软件危机
1.2.1软件危机原因分析
1.2.2软件危机现象
1.2.3避免软件危机的方法
1.3软件工程
1.3.1软件工程定义
1.3.2软件生命周期
1.3.3敏捷开发过程
习题
第2章软件测试基本概念
2.1软件测试概述
2.1.1软件测试发展史
2.1.2软件测试定义
2.1.3软件测试目的
2.1.4软件测试原则
2.1.5软件测试质量度量
2.1.6软件测试与软件开发各阶段的关系
2.2软件测试工作
2.2.1软件测试工作流程
2.2.2软件测试工具对测试工作的支持
2.2.3软件测试工作的几个认识误区
2.3软件测试职业
2.3.1软件测试职业发展
2.3.2软件测试人员应具备的素质
2.3.3软件测试的就业前景
习题
第3章生命周期软件测试方法
3.1生命周期测试的概念
3.1.1生命周期测试的工作划分
3.1.2生命周期测试的主要任务
3.1.3基于风险的软件测试方法
3.2生命周期各个阶段的测试要求
3.2.1需求阶段测试
3.2.2设计阶段测试
3.2.3编码阶段测试
3.2.4测试阶段
3.2.5安装阶段测试
3.2.6验收阶段测试
3.2.7维护阶段
3.3支持生命周期软件测试的工具
3.3.1全生命周期质量管理平台Panorama++
3.3.2应用生命周期管理系统HP ALM11
习题
第4章软件测试分类与分级
4.1软件测试分类
4.1.1计算机软件配置项
4.1.2基于CSCI的软件测试分类
4.2软件测试分级
4.2.1软件生命周期的测试分级
4.2.2软件测试中的错误分级及其应用
习题
第2部分软件测试方法与技术基础篇
第5章软件静态测试
5.1各阶段评审
5.1.1同行评审
5.1.2需求规格说明书的测试
5.2代码检查
5.2.1代码检查方法
5.2.2代码编程规范检查
5.2.3代码的自动分析
5.2.4代码结构分析
5.2.5代码安全性检查
5.3软件复杂性分析
5.3.1软件复杂性度量与控制
5.3.2软件复杂性度量元
5.3.3面向对象的软件复杂性度量
5.4软件质量模型
5.4.1软件质量概念
5.4.2软件质量分层模型
5.4.3软件质量度量与评价
5.5静态分析工具
5.5.1IBM Rational Logiscope RuleCheck/Audit介绍
5.5.2HP FortifySCA介绍
习题
第6章软件动态测试
6.1“白盒”测试
6.1.1逻辑覆盖
6.1.2路径测试
6.1.3数据流测试
6.1.4信息流分析
6.1.5覆盖率分析及测试覆盖准则
6.2“黑盒”测试
6.2.1等价类划分
6.2.2边界值分析
6.2.3因果图
6.2.4随机测试
6.2.5猜错法
6.3“灰盒”测试
6.3.1“灰盒”测试概念
6.3.2“灰盒”测试步骤与应用举例
6.4测试用例设计
6.4.1测试用例设计概念
6.4.2测试用例编写要素与模板
6.4.3测试用例的设计步骤
6.4.4测试用例分级
6.4.5软件测试用例设计的误区
6.5单元测试
6.5.1单元测试的意义
6.5.2单元测试的内容
6.5.3单元测试方法和步骤
6.6集成测试
6.6.1集成测试的概念
6.6.2集成测试方法
6.6.3集成测试过程
6.7确认测试
6.7.1确认测试基本概念
6.7.2确认测试过程
6.8系统测试
6.8.1系统测试概念
6.8.2系统测试中关注的重要问题
6.8.3系统测试的要求和主要内容
6.8.4系统测试设计
6.8.5系统测试手段
6.9动态测试工具介绍
6.9.1国产单元测试工具Visual Unit
6.9.2开源集成测试工具Selenium
6.9.3系统测试工具
习题
第3部分软件测试管理方法与技术篇
第7章软件缺陷与缺陷管理
7.1软件缺陷
7.1.1软件缺陷定义
7.1.2软件缺陷描述
7.1.3软件缺陷分类
7.1.4软件缺陷管理流程
7.2软件缺陷度量、分析与统计
7.2.1软件缺陷度量
7.2.2软件缺陷分析
7.2.3软件缺陷统计
7.3软件缺陷报告
7.3.1缺陷报告内容
7.3.2缺陷报告撰写标准
7.4缺陷管理工具
7.4.1TrackRecord(商用)
7.4.2ClearQuest(商用)
7.4.3Bugzilla(开源)
7.4.4BMS(国内商业软件)
7.4.5其他
习题
第8章软件测试过程及测试过程管理
8.1软件测试过程
8.1.1软件测试过程模型
8.1.2软件测试过程中的活动及内容
8.1.3软件测试过程度量
8.1.4软件测试过程成熟度
8.1.5软件测试过程改进
8.2软件测试过程管理
8.2.1软件测试过程管理的理念
8.2.2软件测试计划与测试需求
8.2.3软件测试设计和开发
8.2.4软件测试执行
8.2.5软件测试文档
8.2.6软件测试用例、测试数据与测试脚本
8.2.7软件测试过程中的配置管理
8.2.8软件测试过程中的组织管理
8.3测试过程管理工具
8.3.1HP Quality Center介绍
8.3.2北航软件所QESuite
8.3.3TestLink(开源免费)
习题
第4部分高级软件测试方法与技术篇
第9章软件测试自动化
9.1软件测试自动化概念
9.1.1自动化测试的定义
9.1.2适合于自动化测试的相关活动
9.1.3自动化测试的优点
9.1.4自动化测试的局限性
9.2软件测试自动化框架
9.2.1自动化测试框架概念
9.2.2常用的自动化测试框架
9.2.3基于API 测试的分布式测试框架
9.3自动化测试技术
9.3.1脚本技术
9.3.2录制/回放技术
9.3.3基于数据驱动的自动化测试技术
9.3.4基于关键字驱动的自动化测试技术
9.3.5基于测试预期的结果分析比较技术
9.4自动化测试工具应用举例
9.4.1测试中常用的自动化测试工具
9.4.2基于 STAF/STAX 的自动化测试框架
习题
第10章软件可靠性测试
10.1操作剖面与统计测试
10.2基于操作剖面的软件可靠性测试
10.2.1基于操作剖面的统计测试
10.2.2操作剖面的构造
10.2.3操作剖面的使用
10.2.4基于操作剖面的软件可靠性疲劳测试
10.2.5结论
10.3软件可靠性测试工具
习题
第11章软件安全性/软件安全测试
11.1软件安全性测试
11.1.1软件安全性概念
11.1.2软件安全性分析
11.1.3软件安全性测试方法与技术
11.2软件安全测试
11.2.1安全漏洞的概念
11.2.2网络安全相关技术
11.2.3解决软件安全问题的方法
11.2.4软件安全测试方法与技术
11.3应用软件安全性/安全测试工具
11.3.1IBM Rational AppScan
11.3.2JSky
11.3.3WebPecker
习题
第12章软件国际化与本地化测试
12.1软件国际化与本地化
12.1.1软件国际化及本地化概念
12.1.2常用字符集编码及UTF8
12.2软件本地化测试
12.2.1本地化之前的国际化测试
12.2.2软件本地化测试方法
习题
第13章面向对象软件测试
13.1面向对象程序设计语言对软件测试的影响
13.1.1信息隐蔽对测试的影响
13.1.2封装和继承对测试的影响
13.1.3集成测试
13.1.4多态性和动态绑定对测试的影响
13.2面向对象测试模型
13.2.1面向对象分析的测试
13.2.2面向对象设计的测试
13.2.3面向对象编程的测试
13.2.4面向对象的单元测试
13.2.5面向对象的集成测试
13.2.6面向对象的系统测试
13.2.7面向对象软件的回归测试
13.2.8基于UML的面向对象软件测试
13.3面向对象软件测试用例的设计
13.3.1基于故障的测试
13.3.2基于脚本的测试
13.3.3面向对象类的随机测试
习题
第14章客户端应用软件测试
14.1C/S、B/S应用模式概述
14.1.1C/S、B/S技术特点
14.1.2C/S和B/S的比较
14.1.3C/S与B/S的区别
14.2C/S系统测试
14.2.1C/S系统测试对传统测试的影响
14.2.2C/S 系统测试的目标
14.2.3C/S系统测试的内容和步骤
14.3B/S系统测试
14.3.1Web应用测试
14.3.2Web 应用性能测试方法
14.4SOA应用软件测试
14.4.1基于SOA的Web服务
14.4.2SOA应用测试
14.4.3Web服务测试
习题
第5部分典型应用软件测试
第15章移动应用软件测试
15.1移动应用测试的困难
15.2移动应用App测试方法和技术
15.2.1App测试概念
15.2.2移动App测试类型
15.2.3如何开展移动App测试
习题
第16章云应用软件测试
16.1云测试基本概念
16.1.1云测试特点
16.1.2云测试优点
16.2云测试方法和技术
16.2.1云环境中的测试和针对“云”的测试
16.2.2云测试抽象模型
16.2.3云测试现状及挑战
16.2.4云测试平台
习题
第17章游戏软件测试
17.1游戏软件测试基本概念
17.1.1游戏软件测试的特性
17.1.2常见的游戏软件错误
17.2游戏软件测试与游戏开发过程
17.2.1游戏开发过程
17.2.2游戏测试与开发过程的关系
17.3网络游戏测试
17.3.1网络游戏的平衡性测试
17.3.2魔兽世界的平衡性测试
17.3.3网络游戏的性能测试
17.3.4网络游戏的压力测试
17.4手机游戏测试
17.4.1手机游戏软件的测试内容
17.4.2手机游戏软件测试的自身特性
习题
第18章嵌入式软件测试
18.1嵌入式软件测试概念
18.1.1嵌入式软件开发及应用特点
18.1.2嵌入式软件测试问题及传统测试方法
18.1.3嵌入式软件测试策略及测试流程
18.2嵌入式软件测试工具
18.2.1嵌入式软件测试的典型工具
18.2.2嵌入式软件测试工具举例
18.2.3传统测试工具的局限性
18.3全数字仿真测试方案
18.3.1全数字仿真的概念
18.3.2北京奥吉通的CRESTS/ATAT和CRESTS/TESS介绍
习题