写在前面的话:探索的乐趣
某日清晨,阳光明媚,我娃吃饱喝足之后,伸出小手挥舞,试探着想去触碰身边的玩具,小手晃晃悠悠,距离玩具忽远忽近,终于碰到了,小娃咧开嘴开心的大笑。继而第二次,第三次,越来越熟练。
探索式测试也是如此,我们在未知的软件世界中跌跌撞撞,不断探索。探索式测试试图把制定计划,进行测试,重新制定计划等多个过程有机结合起来,每次只前进一小步,但这每一步都是由软件过去和当前的运行状态和软件运行时留下的蛛丝马迹来即时确定的。在不断探索之中,我们不断了解被测的应用程序,并且体会到探索的乐趣。
一.测试的态度,精髓和目标
二.探索式测试的优点
三.测试方法的应用
测试,就是有所变,有所不变。如何引入变化,是进行探索式测试的目的。
1. 混合测试法
混合测试法旨在将密切相关,互相影响的模块和功能结合测试,而不是各自隔离,有利于模块交织点的问题发现。
2.通宵测试法
通宵测试法,意为不要关闭程序,一直让它运行,观察输入对状态的累积影响,是否会发生溢出等异常。
3.配角测试法
配角测试法,意为和主要特性一起显示的功能,由于位于软件的显著位置,用户极容易关注到,所以需要重点关注。
4.改变输入
用户往往不会按照操作指导一步一步的执行,他们可能会输入非法值,增加操作步骤,减少操作步骤,重复操作步骤,甚至会改变输入顺序。我们无法限定用户执行和输入的边界,我们需要探索输入变化对软件的影响。
1)输入之变更输入顺序
2)输入之输出指导输入
软件第一次针对输入产生某种响应时,软件处于默认状态;第二次输入时,很多变量变化为设置之后的值。两个结果中很有可能有一个会失败。
3)输入之非法输入
5.状态
软件状态是状态空间的一个点,它由所有内部数据结构的取值唯一决定,它往往与输入密切相关并放在一起测试。