1. 动态黑盒测试
不深入代码细节测试软件的方法称为动态黑盒测试,动态黑盒测试常被称为行为测试,因为测试的是软件在使用过程中的实际行为。这种不必了解软件”盒子“内发生的事情,只需知道输入A输出B得到结果C即可
2. 测试用例
测试用例是指进行测试的时候使用的特定输入,以及测试软件的过程步骤。
3. 通过性测试和失效性测试
测试软件有两种基本方法:通过性测试和失效性测试。通过性测试是确认软件至少能做什么,而不会考验其能力。失效性测试是纯粹为了破坏软件而设计和执行的测试用例。
4. 等价类划分
等价类划分是指分步骤的把海量(无限)的测试用例集减得很小,但过程同样有效。在寻找等价划分的时,考虑把软件具有相似输入、相似输出、相似操作的分在一组,这些组就是等价划分。
5. 数据测试
5.1 边界条件
边界条件是特殊情况,因为编程很容易在边界上产生问题。如果软件测试问题包含确认的边界考虑一下以下可能出现的边界条件:
- 第一个|最后一个
- 最大值|最小值
- 开始|完成
- 超过|在内
- 空|满
- 最短|最长
- 相邻|最远
如果要选择在等价划分中包含哪些数据,就根据边界来选择
5.2 边界测试
建立两个等价划分就可以找出更多的软件缺陷。第一个划分包含认为应该正确的数据——在边界内部最后一两个合法的数据点。第二个区间包含认为可能出现错误的数据——边界之外一到两个非法的数据点
提出边界条件时,一定要测试临近边界的有效数据,测试最后一个可能有效的数据,同时测试超过边界的无效数据。
5.3 次边界条件
有些边界在软件内部,最终用户几乎看不到,但是软测员工仍有必要进行检查,这样的边界条件就叫次边界条件或者内部边界条件
5.4 默认、空白、空值、零值和无
一定要考虑建立处理默认值、空白、空值、零值或者无输入等条件的等价划分,不要把他们与合法情况和非法情况混在一起,而要建立单独的等价划分。
5.5 非法、错误、不正确和垃圾数据
数据测试最后一种类型是垃圾数据。这是失效性测试的对象。经过边界测试、次边界测试和默认值测试等通过性测试证实软件能够工作之后,就该进行垃圾数据测试了
6. 状态测试
软件状态是指软件当前所处的条件或模式,软件测试员必须测试程序的状态及其转换。
7. 测试软件的逻辑流程
对于软件测试,解决方法是运用等价划分技术选择状态和分支
7.1建立状态转移图
状态转换图应该表示出以下项目
- 状态可能进入的每一种状态
- 从一种状态转入到另一种状态所需的输入和条件
- 进入或退出某种状态时的设置条件及输出结果
7.2 状态变量
状态变量包括进入和退出状态相关的静态条件、信息、值、功能等。
7.3 失效性测试
- 重复测试:不断执行同样的操作。进行这种重复测试的主要原因是检查是否存在内存泄漏
- 压迫测试:使软件在不够理想的条件下运行,例如说内存小,磁盘空间少、CPU速度慢,调制调解器速率低等。
- 重负测试:与压迫测试相反,尽量提供条件任其发挥。eg.让软件处理尽可能大的数据文件。
重复、压迫、重负测试应该联合使用,同时进行,这是找出以其他方式难以发现的严重缺陷的一个可靠的方法。