*建立起一个全局目标后,再开始测试
探索式测试的几个目标:
1、理解应用程序如何工作、它的接口看起来怎样、它实现了哪些功能
2、强迫软件展示全部能力:
*目的是让软件努力运行,证明软件确实实现了设计时所要求达到的功能
3、找到缺陷,并有目的的使缺陷数量降为零
把软件特性划分成几个相互重叠的“区域”,具体区域和测试方法如下:
商业区:
*含义:用户所要使用的软件特性和功能,你的软件包装盒上描述的特性和掩饰的特性及代码
测试方法:
1、指南测试法:根据用户说明书来测试
2、卖点测试法:观摩哪些销售演示,测试演示过程,并且可以加上质疑测试法
3、地标测试法:提前确定关键的软件特性,确定他们的前后顺序
4、极限测试法:向软件提出最困难的问题
5、快递测试法:关注于数据,找到每个和数据有接触的软件特性
6、遍历测试法:通过选定一个目标(例如所有菜单项、所有错误消息或所有对话框),然后使用可以发现的最短路径来访问目标包含的所有对象
历史区:
*含义:从前版本遗留下的代码,还有那些曾经出现较多缺陷的特性和功能
测试方法:
1、恶邻测试法:反复测试缺陷特别多的地方
2、博物馆测试法:关注被接受重新修改的老代码,或者是没被改动就放到新环境中运行的老代码
3、上一版测试法:回归测试,关注新版本中无法再运行的测试用例
娱乐区:
*含义:软件的辅助特性,而不是主线特性
测试方法:
1、配角测试法:关注和主要的特性非常邻近的特性,例如和主要的特性一同出现在显示器上,容易被用户注意
2、深巷测试法:软件中最不可能被用到的或者最不吸引用户的特性,有助于提高代码覆盖率
*注:多个特性混合在一起测试时,比如重要的和不重要的混在一起时,可以考虑:
**有关输入的问题:这两个特性会不会处理同一输入
**有关输出的问题:这两个特性功能是否在可见的用户界面上操作同一块区域?他们会产生同一个输出吗?
**有关数据的问题:这两个特性会操作其共享的一些内部数据?是读取共享数据、还是修改共享数据
3、通宵测试法:性能测试和压力测试,永远不关闭程序,连续不断的使用某些特性来测试软件
旅游区:
*含义:只对新用户有吸引力的特性和功能,它关心的是快速访问软件的各种功能,而不是关心软件是否工作
测试方法:
1、收藏家测试法:收集软件的输出,收集的越多越好
*背后的思想是测试人员到达所有那些可到达的地方并把观察到的输出结果记录下来
2、长路径测试法:测试离应用程序开始点尽可能远的特性,例如:哪个特性需要点击N次才能被用到,选定该特性,一路点击过去,然后测试它
*指导思想:到达目的地前尽量多的在应用程序中穿行,因而要选取埋在应用程序最深处的特性
*可以结合收藏家测试法
3、超模测试法:只关心表面的东西
4、测一送一测试法:测试时运行一个应用程序,然后运行该应用程序的另外一个拷贝,然后再运行一个拷贝时,关注网络传输数据、文件操作等方面
旅馆区:
*含义:指一些经常被忽视的或者在测试计划中较少描述的次要的及辅助功能
测试方法:
1、取消测试法:
*启动操作然后停止它,并花些时间在应用程序里四处检查
*找应用程序中最耗时的操作来充分实施这种方法
*可以尝试开始一个操作,不要停止它,然后再开始另一个同时的操作
*在取消被测对象之前应该改变被测对象的状态,这点也很重要
2、懒汉测试法:做尽量少的实际工作,
*可以尝试接受所有的默认值,测试程序对默认值的处理情况
破旧区:
*含义:指一些经常被忽视的或者在测试计划中较少描述的次要的及辅助功能
测试方法:
1、注意输入的限制,哪些是非法输入;注意不按照指定的顺序做事情
2、重复执行同样的操作,重复输入同样的数据
总结:
跟踪哪种测试法发现的缺陷最多,哪种执行时间最少,哪种的代码、界面、功能覆盖最多等