提升测试效率--不做无效,重复的测试

发表于:2021-10-19 09:48

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:佚名    来源:知乎

  有些人感觉测试很累,有些人感觉测试很轻松,排除掉开发的因素和产品功能复杂度的因素,其实和测试技巧也有很大的关系,今天先跟大家聊聊如何提升测试效率,后续再更新干货。
  所谓的测试效率就是测试产出和测试时间之比,假设测试产出是一个定值,那要提高测试效率,就是要缩短测试时间。那要怎么才能减少测试时间呢?
  1、不要做无效的测试
  一般项目前期bug都是较多的而且极为不稳定的,如果有多个较严重的bug,可以拒绝继续测试。一方面继续测试也没有意义,因为阻塞测试地方会有很多,也无法测试全:另一方面即便继续测试出很多bug,也可能由于那些bug引起的,倒不如等这些修复之后再继续测试。
  这样对于前期来说可以节约不少测试时间,把做无效测试的时间留出来想想如何优化测试顺序。
  2、不要做重复的测试
  要做到这点的前提是要对整个项目的架构,相互的之间的联系等等要十分了解,这样可以避免很多看似不同的测试点,但实际只是一个测试点,仅仅是外面包装的不同而已。
  于是当这一个测试点有bug,那些其他看似不同的测试点其实也不用测试了,肯定也是有问题的,那提bug的时候可以列出核心问题所在,并将其他涉及的点列出来,等验证的时候再把那些点都在验证一遍。这样等于少做了很多测试,只是在验证的同时把测试再覆盖全。
  3、不同测试版本的测试侧重点
  对于测试来说肯定需要测试很多轮,每一个测试版本作为一个测试轮,但是不是需要每个版本都做完整的测试呢?答案肯定是否定的,不然测试岂不是要累死?
  那应该怎么取舍和分配呢?这里提供一下思路:
  第一轮:只测试大致功能,不需要细测,列出主要bug。
  第二轮:验证第一轮bug,然后全面细测,列出所有能发现的bug。
  第三轮——第x轮:验证上一轮的bug。
  最后一轮:验证全部bug,并全面细测。
  有人要问怎么才能判断是不是最后一轮?很简单,当所有发现的bug均关闭状态,这个时候就可以作为最后一轮来判断,而这一轮也是最重要的一轮,因为涉及到上线所以需要验证前x轮的所有bug,以避免bug修复完被bug再次覆盖的情况。
  如果按照以上的思路,其实只是第二轮和最后一轮需要全面测试,这样对于测试轮数多的情况下又能节约很多测试时间。
  4、优化测试顺序
  以上3个都是基于bug多的情况下(而这是常态,没bug反而不是常态了),如果项目质量就是那么好,bug很少,那上面3个其实也省不了多少时间。所以最最关键的其实还是在于测试本身,如何通过优化测试顺序,来节约自己的测试时间呢?这里有一套反常规的理论,就是先测试异常情况,而不是先测试正常情况。
  举个例子:
  就拿注册功能来说,一般会分为3个步骤,注册,验证,登录,一般正常情况都是先测试正常注册,正常验证,正常登录,然后测试异常注册,异常验证,异常登录。但这样有一个缺点,会有重复无用的操作:
  当完成正常测试后再测试异常之前,需要从登录状态退出,然后再点击注册入口进行注册。
  当测试异常验证的时候,需要再次测试正常注册,不然就进入不了验证的步骤。
  当测试异常登录的时候,又需要再次测试正常验证,不然就进入不了登录的步骤。就这3点也许大家觉得最多浪费几十秒的时间,但如果注册信息要填很多呢,如果验证邮件或者短信要延迟很久才收到呢,这样就是浪费了几分钟吧。如果有其中有bug,那可能要测试多次来定位问题,那就可能浪费了10分钟,而这仅仅是一个并不复杂的测试,如果涉及到更复杂的关联,可能会浪费更多的时间在于无效和重复的测试中。
  那么问题来了,这么调整测试顺序呢?
  · 先测试异常注册,输入各种错误的注册信息,如果没有bug的情况下是跳不到验证界面的;
  · 然后测试正常注册,可以正常跳到验证界面;
  · 接着测试异常验证,如果没有bug的情况下是跳不到登录界面的;
  · 再测试正常验证,可以正常跳到登录界面;
  · 再测试异常登录,如果没有bug的情况下是无法正常登录的;
  · 最后测试正常登录,可以登录完成这样其实覆盖的测试点一个没少,但却没有无效和重复的测试,调整顺序之后可以减少不必要的操作,积少成多的节约测试时间。

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号