图书目录

第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常用字符集编码及UTF8

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介绍

习题