在软件测试中除了根据测试样例和测试说明书进行测试外,还需要进行随机测试(Ad-hoc testing),主要是根据测试者的经验对软件进行功能、性能及异常操作的抽查。随机测试是根据测试说明书执行样例测试的重要补充手段,是保证测试覆盖完整性的有效方式和过程。
做随机测试前需要做可能的一些准备
最好知道以前测试出现bug的数量及bug的分布情况
随机测试功能点的选取
1.根据用例测试阶段对产品的了解选取bug比较密集的功能模块。
在发现很多bug的地方,一定可以发现更多的bug。我们在做随机测试的时候,往往会先统计一下,之前哪些模块被发现的bug最多,那么接下来一定要狠狠的在那个模块里发掘一下。
2. 功能比较复杂,操作路径比较复杂的地方,进行随机测试
比如一个既有短信验证码,又有语音验证码功能点比较多的地儿,很可能存在问题。我曾经在一个移动app上进行多次短信验证码,语音验证码,错误,正确交错操作中app崩溃退出 .
3.根据发现的一次性bug或重现率比较低的bug涉及的功能点选取随即测试功能点。
Bug产生的过程一定可以重现,重现率比较低的bug是隐藏比较深的bug,这些bug可能正是导致软件无法上线的原因。因此重现这些隐藏bug是十分重要的工作。
4.与开发人员沟通了解软件的缺陷。
首先可以了解到程序本身哪些地方最复杂,最薄弱,这些地方最容易发生什么错误,其次可以了解程序员最容易在哪些地方犯哪些错误。前者通过对程序的熟悉可以比较好的掌握,后者可以通过对bug的分析得到。有一次在进行代码review的时候,开发突然冒出一句第一次写多线程的代码,那我在测试时特别针对多线程重点测试,发现了严重bug。
5.根据经验选取功能点。积累了一定的测试经验以后,有时测试就是一种感觉。