献辞
译者序
前言
各章概要
致谢
第一部分引言
第1章 指导软件测试的故障模型
软件测试的目的
理解软件行为
理解软件环境
人类用户
文件系统用户
操作系统用户
软件用户
理解软件能力
测试输入
测试输出
测试数据
测试计算
总结和结论
练习
参考文献
第二部分 用户接口攻击
第2章 用户接口测试:输入和输出
使用故障模型指导测试
探究输入域
攻击l应用输入强制产牛所有错误信息
攻击2施加强制软件建立有默认值的输入
攻击3探究允许的字符集合和数据类型
攻击4输入缓冲区溢出
攻击5找出可能会相互作用的输人, 并测试输人值组
攻击6多次重复同样的输人或输人序列
探究输出
攻击7强制每个输入产牛不同的输出
攻击8强制产生无效输出
攻击9强制改变输出属性
攻击10强制屏幕刷新
结论
练习
参考文献
第3章 用户接口测试:数据和计算
盒内测试
探究存储的数据
攻击11使用不同的初始条件施加输入
攻击12强制数据结构存储过多或过少的值
攻击13考察修改内部数据约束的可选方法
探究计算和功能部件的交互作用
攻击14将无效操作数和操作符结合进行实验
攻击15强制函数进行递归调用
攻击16强制计算结果过大或过小
攻击门发现不充分地共享数据或交互的功能部件
结论
练习
第三部分 系统接口攻击
第4章 文件系统接口测试
从文件系统接口攻击软件
基于介质的攻击
攻击1按容量填满文件系统
攻击2强制介质忙或不可用
攻击3毁坏介质
基于文件的攻击
攻击4赋给无效文件名
攻击5改变文件访问许可
攻击6更改或破坏文件内容
结论
练习
第5章 软件/操作系统接口测试
从软件接口攻击软件
记录-仿真攻击
植入能执行所有错误处理代码并经历所有异常的故障
植入易于在测试实验室模拟的故障
植入在真实领域中可能出现的故障
观察-失效攻击
结论
练习