|
测试是一个非常宽泛的概念,在平常人的概念中,测试总是那么不起眼。不管是航空航天,汽车工业,还是高新技术,生物医药,我们所关注的只是那些高精尖的新技术,新创造,而忽视了这些创造发明的背后沉积了多少人无数次反复试验和测试,没有一次次测试数据积累和修正,那些高技术,创新和发明只是空中楼阁,可远观而不能用。
我们在一般软件测试会用到一些工具,其中qtp,winrunner等测试工具为大家所广泛熟悉。上次,在测试群中,一位群友说他的qtp的record无法正常启动IE,发来求助。一个看似很简单的问题,其实并不那么单纯。要解决这个问题,要从多个方面分析入手,通过对问题分析,从中也能学习到很多测试有关的思想,我把思路和分析摆出来,和大家分享一下。
测试找出问题的方法是缩小范围
首先确认是qtp的问题还是ie的问题,我们手工启动ie,作相同的事情看是否可以,如果手工使用ie没有问题,那就缩小确定问题在qtp上。
然后确认qtp从什么时候开始出现如此问题的,如果昨天还是好的,今天就不能用了,那我们就锁定问题出在这段时间上。
锁定了对象,锁定了时间,应该好办了吧,其实并非如此。在这段时间上,发生的事情太多了,怎么知道我们做的事情会影响到qtp的功能呢,这就下一个测试方法了。
列出影响测试结果的所有路径
首先,确定软件是否是使用版,是否过期,确定过期需要用到4种方法,第一种方法是修改系统时间到几天前,重新启动软件,检查功能是否正常使用,第二种方法,确定软件其他主要功能是否可以使用,如果也不能使用,则软件可能过期。第三种方法,检查软件的about,如果为demo版本,则可能过期。第四种方法,软件是否有过期提示。
其次,检查防火墙,杀毒软件是否影响到软件正常运行。关闭或者禁用防火墙,杀毒软件,重新启动软件,或者重新启动操作系统,再做相同操作,检查功能是否可用。
最后,检查是否是qtp设置,打开qtp的option项,察看和record有关的所有设置,如果有default选项,点一下,恢复到qtp默认选项上。保存重启qtp,再做record操作。
如果以上都不是,那么推测qtp的record文件损坏,或者系统文件无法调用,建议重新安装qtp。
给出解决问题的方法
1. 如果我们确定问题出在qtp的option设置,那么修改option设置,重新启动qtp
2. 如果是杀毒软件或者防火墙导致的record无法进行,我们在杀毒软件或者防火墙的白名单中加入qtp
3. 如果是qtp的record文件损坏,我们建议重新安装qtp
4. 如果是软件过期问题,建议搞一个license
以上是针对一个qtp无法record所作的推断和分析过程,作测试不仅仅是针对一个具体问题的推断和解决,需要举一反三,解决此类问题。所以,从这个推断,分析,解决问题过程我们会得到很多启发。
启发1:对比测试能有效缩小问题范围
当问题出现的时候,我们对问题前后进行对比,锁定问题对象和问题环境。比如,我们测试一款游戏,在1.2版本出现一个任务无法完成,这个时候,对比一下1.1版本,检查1.1版本是否存在同一问题,这样就锁定了问题开始出现的范围。
启发2:经验能有效提高测试效率
当问题出现的时候,我们会列举所有出现问题的路径,但是,那种可能性最大,这就需要测试人员经验,一个老的测试人员对问题有着敏锐的嗅觉,一个细小的变化都可能引发不同的判断结果。例如:我们在测试发现一个页面问题,如果刷新之后,这个问题就没有了,那么,这里的刷新操作就很重要,刷新之后问题没了,说明操作出现问题是页面部分。
启发3:测试是一种手段,解决问题才是目的
作为测试人员,永远把发现问题作为自己的乐趣,有人开玩笑说,测试人员是在给开发的伤口上撒盐,此话不假。我们要求测试人员要对问题有孜孜追求的态度,但同时,我们希望测试人员不要把对问题的追求转嫁到对开发人员鄙视的追求。从软件开发深层次的角度来讲,测试和开发目的是一致的,就是发现和解决问题,所以,当我们从千万条路途中找到那个BUG的时候,是我们测试的胜利,但是不是测试的最终目的,测试人员如果有能力帮助开发人员解决问题,那是最完美的测试,这样的测试人员,难道他的薪资不应该比开发高吗。
启发4:测试人员要敢于推断
有时候发现问题对我们来说并不难,但是要重现一个问题,可能就不那么容易了。因为,如果能够重现问题,就基本判断出引起问题的触发点,而这个问题触发点往往是最难捉到的。所以,问题出现来,但是我们设定了千万条路来重现它,这个时候就要求测试人员要敢于推断,拿出愚公移山的精神。
以上是我的一点小小启示,与大家分享。 |
|