目录
第1章软件测试基础知识
1.1软件测试的数学理论基础
1.1.1集合论
1.1.2函数
1.1.3关系
1.1.4命题逻辑
1.1.5概率论
1.1.6图论
1.2软件测试的现状与发展
1.2.1软件测试的现状
1.2.2软件测试的发展趋势
1.3软件测试和软件质量
1.3.1什么是软件测试
1.3.2什么是软件质量
1.3.3软件测试和软件质量保证的区别
1.3.4进行多少测试才终止
1.4为什么需要软件测试
1.4.1导致软件缺陷的原因
1.4.2软件测试在软件开发、维护和使用中的角色
1.4.3软件测试心理学
1.5软件测试的目的
1.6软件测试的原则
1.6.1所有的软件测试都应追溯到用户需求
1.6.2尽早地和不断地进行软件测试
1.6.3不可能完全地测试
1.6.4增量测试,由小到大
1.6.5避免测试自己的程序
1.6.6设计完善的测试用例
1.6.7注意测试中的群集现象
1.6.8确认缺陷的有效性
1.6.9合理安排测试计划
1.6.10进行回归测试
1.6.11测试结果的统计和分析
1.6.12及时更新测试
1.7软件测试级别和模型
1.7.1软件测试级别
1.7.2软件测试生命周期
1.7.3开发和测试模型
1.8软件测试的类型
1.8.1功能性测试
1.8.2非功能性测试
1.8.3软件结构性测试
1.8.4变更相关的测试(再测试和回归测试)
1.9基本的软件测试过程
练习
第2章静态测试技术
2.1静态测试技术概要
2.2评审技术概述
2.2.1评审的定义和类型
2.2.2评审过程
2.2.3责任和角色
2.3代码检查
2.3.1代码检查类型
2.3.2代码检查内容
2.3.3编码规范
2.3.4代码缺陷检查表
2.4正规技术评审
2.4.1定义
2.4.2技术评审的目的
2.4.3评审小组成员
2.4.4技术评审活动过程
2.4.5技术评审注意事项
练习
第3章动态测试技术
3.1黑盒测试技术
3.1.1边界值分析法
3.1.2等价类测试法
3.1.3错误推测法
3.1.4因果图法
3.1.5决策表测试法
3.1.6Use Case法(场景法)
3.1.7正交实验法
3.1.8黑盒测试方法选择的策略
3.2白盒测试技术
3.2.1白盒测试概念
3.2.2程序结构分析
3.2.3逻辑覆盖测试法
3.2.4程序插装
3.2.5其他白盒测试方法简介
3.2.6白盒测试方法选择的策略
练习
第4章单元测试
4.1单元测试概述
4.2单元测试环境及过程
4.3单元测试策略
4.4单元测试的分析和用例设计
4.5单元测试实例
练习
第5章集成测试
5.1集成测试概述
5.2集成测试环境及过程
5.3集成测试方法
5.4集成测试的分析和用例设计
5.5集成测试实例
练习
第6章系统测试
6.1系统测试概述
6.2系统测试环境及过程
6.3系统测试类型
6.4系统测试的分析和用例设计
6.5系统测试实例
练习
第7章验收测试
7.1验收测试概述
7.2验收测试过程
7.3验收测试实例
练习
第8章 面向对象软件测试
8.1面向对象技术简介
8.1.1面向对象的概念
8.1.2面向对象的开发模式
8.1.3统一建模语言
8.2面向对象测试模型
8.3面向对象的用例设计方法
8.3.1基于缺陷的测试
8.3.2OO类的随机测试
8.3.3类层次的划分测试
8.3.4类行为模型测试
8.4面向对象测试的策略
8.4.1面向对象分析的测试
8.4.2面向对象设计的测试
8.4.3面向对象编程的测试
8.4.4面向对象的单元测试
8.4.5面向对象的集成测试
8.4.6面向对象的系统测试
练习
第9章专用应用系统测试
9.1GUI测试
9.1.1GUI测试概述
9.1.2GUI测试原则
9.1.3GUI测试内容
9.1.4GUI测试的设计及自动化
9.2Web应用系统测试
9.2.1Web系统基本组成
9.2.2Web应用系统测试综述
9.2.3Web应用系统测试的实施
9.3数据库测试
9.3.1数据库测试概述
9.3.2数据库功能性测试
9.3.3数据库性能测试与原因分析
9.3.4数据库可靠及安全性测试
9.4嵌入式系统测试
9.4.1嵌入式系统介绍及测试基础
9.4.2嵌入式测试策略
9.4.3嵌入式测试环境的创建与实施
9.4.4嵌入式测试的工具
9.4.5嵌入式测试应用——手机测试
9.5负载压力测试
9.5.1负载压力测试基础
9.5.2负载压力测试的策略
9.5.3负载压力测试的解决方案和实施
9.5.4负载压力测试结果分析
9.5.5系统性能调优
9.6游戏测试
9.6.1游戏测试的基本概念
9.6.2游戏测试的主要内容
9.6.3游戏测试的实施
练习
第10章软件测试管理
10.1测试计划的制定与估算
10.2测试的组织
10.3测试过程监控
10.4测试文档
10.5软件配置管理
10.6测试与风险
10.7缺陷管理
练习
第11章软件测试工具
11.1测试工具的类型
11.1.1测试管理工具
11.1.2静态测试工具
11.1.3功能测试执行工具
11.1.4覆盖工具(结构性测试工具)
11.1.5性能和压力测试工具
11.1.6其他工具
11.1.7测试工具的选择
11.2测试自动化与手工测试
11.2.1手动测试的不足
11.2.2自动测试的优点
11.2.3自动测试的局限性
练习
第12章开源测试工具应用
12.1单元开源测试工具JUnit
12.1.1JUnit简介
12.1.2安装
12.1.3使用
12.2开源负载压力测试工具Jmeter
12.2.1Jmeter的基本框架
12.2.2常用测试范围
12.2.3Web服务器测试
附录A部分正交实验表
附录B软件测试中英文术语对照表
参考文献