1、什么是软件测试?
2、什么是软件缺陷?
3、什么是测试用例?
4、什么是软件质量?

第一部分软件测试综述

第1章 软件测试的背景

软件测试员的目标:尽可能早地找出软件缺陷,并确保其得到修复。

软件缺陷的官方定义:
出现了下述五个规则之一的情况才叫做发生了一个软件缺陷:
1、软件未实现产品说明书要求的功能;
2、软件出现了产品说明书指明不应该出现的错误;
3、软件实现了产品说明书中未提到的功能;
4、软件未实现产品说明书中虽未明确提及但是应该实现的功能;
5、软件难以理解、不易使用、运行缓慢或者从测试员的角度看最终用户会认为不好。

软件缺陷产生的原因:
最大的原因是产品说明书。

软件缺陷的修复费用
修复软件缺陷的费用是随着时间推移而增加的——
修复费用随着时间的推移,是指数增长的。
尽量将软件缺陷扼杀在产品说明书阶段。

第2章 软件开发的过程

2.1产品的组成部分

软件测试过程和软件开发过程的关系:
尽可能早的开始软件测试可降低软件开发和缺陷修复的费用。


第3章 软件测试的实质

软件为什么永远不会完美?
完全测试程序是不可能的
软件测试是有风险的行为

杀虫剂怪事——软件测试越多,软件缺陷对于测试的免疫能力也越强的现象。

3.2软件测试的术语和定义:
精确和准确
确认和验证
确认是保证软件符合产品说明书的过程;
验证是保证软件满足用户的需要的过程。
符合产品说明书未必在实际中满足用户的需要,因为产品说明书可能有错误或者不完善。
质量和可靠性
可靠性仅仅是质量的一个方面。
测试和质量保证
软件测试员的目标是尽可能找到软件缺陷,并确保缺陷得以修复。
质量保证人员的主要职责是创建和执行改进软件开发过程并防止软件缺陷发生的标准和方法。