软件测试中常见的一个问题就是概率性问题,概率性问题无论对软件测试人员还是对开发人员而言都是比较头疼的一个问题。这种概率性问题在测试中该如何处理呢?
首先,概率性问题也是问题,这种我们千万不能一笑而过,在这种情况下测试人员要将这些问题记录下来,多做测试,看能否找出问题产生的规律。
其次,我们要对所出现的问题进行评估,看这种问题的严重性,如果是比较轻微的问题,对用户使用没什么影响,也不会影响到软件其他方面正常工作,那在这种情况下如果开发人员很随手就可修改的话,那就进行修改;如果修该起来耗时耗力的话,则可征得有关人员同意后进行keep.
再者,对于比较严重的概率性问题,如死机、系统崩溃等情况,在记录下问题的同时要及时通知相关开发人员,测试人员和开发人员商量解决如何再现并最终解决问题。对于这样的问题一定不能放过,记得以前在给佳能做传真机测试的时候,遇到一个出现系统自动重起的问题,结果为了抓这个问题,几个测试人员专门盯着这个问题反复的测试,为了这个问题整整测了一个星期,好在问题最后得以解决。
第四,有些问题用语言文字描述可能很难描述清楚,对于这样的问题,测试人员再进行描述的时候,有条件的话可以抓图和提供测试log.当然,如果有再现的话,最好通知开发人员,让开发人员确认问题的现象,毕竟百闻不如一见!
第五,概率性问题产生的原因可能是累积性问题,是一系列复杂操作引起的,而有些可能是时间点的问题,只有在某个瞬间进行操作才能出现,过了那个时间点进行操作时就不会出现问题,这样的问题测试人员在测试时和记录时都要注意采取合适的测试策略。
第六,有些概率性可能和测试人员的操作习惯有关,一个测试人员测试出的问题有时候即使描述的很详细,让另一个测试人员来测,可能都很难发现问题,所以概率性的问题在解决之后最好由相关测试人员进行验证。
第七,对于在一些难以重现的比较严重的概率性问题,有关测试人员还可以大范围的搜集相关信息,如可以群发消息询问其他测试人员或者产品试用人员,看他们在测试过程中有没有出现有关现象,搜集的信息越多越容易分析出问题的规律、原因,这样也便于开发人员解决问题。
第八,实际测试中,你会发现很多所谓概率性问题,经过反复、测试验证,还是能够找到一定规律的,只要按照有关操作进行,都可以百分之百出现。所以,概率性问题还是尽量分析原因、找规律,必要时做个专项验证测试。
第九,对于一些让开发人员也束手无策的难以再现的问题,这种情况下可以使用带trace的版本进行测试,再现时直接分析相应的log记录。当然这些都属于开发人员解决问题方式方法范畴,相信他们都有自己独到之处,在此就不班门弄斧了。
|