《51测试天地》—顾翔与你一起漫谈测试
 
   
浅谈探索式测试中用到的一些方法
 
  首页 上一页 2 下一页 尾页
 

  4、对于页面刷新功能的测试探索。 几乎所有的人机交互页面都具有刷新功能,刷新功能的目的在于当开发人员把页面作了变化后 ,用户通过按刷新按钮,就可以及时地看到最新页面的内容。但是由于刷新功能的存在,往往给产品带来一定的隐患,暗藏着一些bug,下面是可能遇到的两种情形:
  4.1 系统进入表单填写页面,填写内容,提交表单,页面出现"表单数据提交成功"的提示信息。 就在这个提交成功页面按下刷新按钮 ,页面会出现用英文提示数据库错误日志,大致内容是表单中的某某字段不允许相同。显然,在刷新的时候,系统把表单数据又重新的进行了一次提交操作。正确处理办法是:刷新后,不再重新提交数据库,仍旧显示表单数据提交成功的提示信息,或者告诉用户不允许同时提交相同的信息。
  4.2 查询到一条记录,点删除按钮,页面出现对应"记录删除成功"的提示信息。  就在这个删除成功提示页面按下刷新按钮,页面用英文提示数据库或程序中出现了空指针异常的错误日志,显然,在刷新的时候,程序对同一条记录又进行了一次删除操作。正确的办法是:不再重新删除记录,仍旧显示表单数据删除成功的提示信息;或者告诉用户修改的记录不存在,无法删除。
  5、对于非常用功能的测试探索。 这里我们还是以表单提交页面做个例子。在一个表单提交页面中往往会出现2到3个按钮(button),一个是[提交](Submit)按钮,一个是[重写](Reset)按钮(这个按钮往往在有些页面被删除),还有一个是[取消](Cancel)按钮。对于[提交](Submit)按钮,几乎每一个测试人员都不会遗忘,而对于[重写](Reset)和[取消](Cancel)按钮,几乎无人问津,而在操作[重写](Reset)或者[取消](Cancel)按钮操作以后,往往会发现一些隐藏的  bug。
  6、对于突发事故的测试探索。 比如一个程序正在进行工作:或许是在备份数据;或许通信系统正在进行通话;或者一个用户正在浏览一个网站,就在这个时刻,事故发生了,比如事故为发生了停电现象(在测试的时候你可以拔掉电源),事故被解除后(在测试的时候你可以再次插上电源),系统被重新运行,这个时刻你要仔细检查一下整个系统是否仍旧可以启动?各个功能是否可以正常运行?是不是存在着数据丢失现象?…
  7、对于界面链接的测试探索。  一个复杂的系统往往存在数十个甚至上百个页面,这些页面存在着互相链接依赖的关系 ,我们在浏览一些网站,甚至浏览某些著名的网站的时候,通常会点击一个链接,系统会告诉你这个页面不存在,这就是由于界面链接测试没有做好,为了避免这种情形的出现,可以用下面做法:是把所有的页面画在一张纸上,如果A页面有链接可以链接到B页面中,就从A画一条直线链接到B,在直线B处画一个箭头;同样如果B页面有链接可以反向链接到A页面中,就从B再画一条直线平行于上述直线链接到A,在直线A处画一个箭头。全部直线,箭头都画好后,选择一个起点页面,一个终点页面,然后设计一条路径,在软件上一步一步地按照计划好的路径进行操作。经过几个这样的路径操作后,图中所有的路径都会被覆盖,测试结束。虽然目前市场上存在检查WEB页面是否存在空链接的工具,但是采用这种方法,在操作过程中往往会发现这样或那样的其他bug。
  8、对于需要多步操作来完成一个事物的测试探索。 有些操作往往需要进行多步操作才可以完成,比如提交一份你的求职简历,第一页填写你的基本信息,第二页填写你的教育经历,第三页填写你的工作经历,最后一页填写你的其他信息。在测试这样的软件产品的时候你可以尝试提交第一,二,三步以后回退到第一步,重新输入,软件会出现什么情况?再尝试提交第一,二步后放弃提交,退出,然后再一次进入,输入和上次相同的信息,软件会出现什么情况?
  9、对于老功能的测试探索。 对于一些产品中一些老的功能,我们经常很容易忽视,有些老测试工程师会说,这些功能我们那个时候测试了不下几十次了,肯定没有问题,这样造成的结果是这些功能模块几个月甚至几年都不去测试一下。可以设想,当其他功能的接口,框架,结构…都在进行调整,变化,包括数据库的结构也可能作过相应的调整。这些调整或许会对老功能造成一定程度的影响,所以我们需要不时地对这些老功能进行测试,有时会发现一些意想不到的问题。
  10、对于重灾区的测试探索。 我们经常会听到这么一句话:80%的Bug出现在20%的功能点上,所以你在测试的时候,对于经常出现Bug的功能点,你一定要小心,小心再小心;认真,认真,再认真地进行测试。在这里你往往你会找到更多的bug。
  11、对于强迫症测试法的测试探索。  强迫症测试法是James A. Whittaker在他的著作中《探索式软件测试》中描述的,采取强迫症测试法往往会发现程序中出现的系统内存泄露等问题。记得几年前我在测试一个产品角色功能模块的时候,需要不断的登出,登入系统,后来发现经过多次的登出,登入操作后系统就会出现死机的现象,最后经过程序员排查,发现是程序中一个指针用完以后没有及时释放造成的。由于我们不可能对所有模块都进行强迫症测试法, 所以在哪里进行强迫症测试法?这需要凭测试人员的经验,也要看运气,具有一定的偶然性。当然我们还可以借助某些工具来进行强迫症测试法,这样可以节省很多精力。

 
2  
 

 

51Testing软件测试网 | 快捷面板 | 站点地图 | 联系我们 | 广告服务 |

建议使用IE 5.0以上浏览器,800×600以上分辨率,法律顾问:上海瀛东律师事务所 张楠律师
版权所有 上海博为峰软件技术有限公司 Copyright@51testing.com 2003-2016, 沪ICP备05003035号
投诉及意见反馈:webmaster@51testing.com   业务联系:service@51testing.com  021-64471599-8017