• 0
  • 0
分享
  • 提升测试效率--不做无效,重复的测试——软件测试圈
  • 曼倩诙谐 2022-05-20 09:42:52 字数 1766 阅读 794 收藏 0

  有些人感觉测试很累,有些人感觉测试很轻松,排除掉开发的因素和产品功能复杂度的因素,其实和测试技巧也有很大的关系,今天先跟大家聊聊如何提升测试效率,后续再更新干货。

  所谓的测试效率就是测试产出和测试时间之比,假设测试产出是一个定值,那要提高测试效率,就是要缩短测试时间。那要怎么才能减少测试时间呢?

  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的情况下是无法正常登录的;

  · 最后测试正常登录,可以登录完成这样其实覆盖的测试点一个没少,但却没有无效和重复的测试,调整顺序之后可以减少不必要的操作,积少成多的节约测试时间。



作者:佚名   

来源:http://www.51testing.com/html/59/n-4479359.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   前言  对于初学Python的小伙伴来说,想用Python代码,来向自己喜欢的女孩表白,我们可以简单的运用Python中的turtle库绘制一个爱心。  一、turtle库  turtle库是python的标准库之一;属于入门级的图形绘制函数库。  二、使用步骤  1.引入库  import turtle  2.自定义函数并构建一个循环  ef gxy():       for i in range (200):         &...
            0 0 746
            分享
          •   法国网站 Numerama 就本月早些时候推出的新款 iPad Pro 采访了苹果公司的三位高级员工。虽然讨论没有透露太多新细节,但提到了未来 iPad 的一个潜在变化。  iPad Pro 2024 太空黑 iPad 背面的苹果徽标在垂直方向上是直立的,但在连接键盘的情况下,设备通常是横向使用的,这就导致苹果徽标会横着出现。在新款 iPad Pro 和 iPad Air 上,苹果已经将前置摄像头移到了较长的右侧边缘,这样当设备横向使用时,摄像头就会出现在顶部中央。  随着横向使用越来越流行,苹果产品设计师莫莉-安德森(Molly Anderson)表示,未来的 iPad 有可能采用横向苹...
            0 0 816
            分享
          •   百度文心一言App已在苹果应用商店AppStore上架,App体积为46.1MB。实测发现,用户可用百度账号登陆,不过对于未获得授权用户,仍需要申请体验权限。  文心一言是百度的大语言模型,提供了人机智能问答、文本创作、图片生成等功能。今年4月,由于“文心一言”盗版App泛滥,百度对苹果公司及相关开发者团队发起诉讼。百度公司当时表示,“目前文心一言没有任何官方App!在我司官宣前,凡是在AppStore和各种应用商店看到的‘文心一言’App都是假的”。  截至发文,百度未对文心一言App上线AppStore进行回应。作者:佚名原文链接:新浪科技_新浪网(sina.com.cn)
            0 0 1311
            分享
          •   在日常测试工程中,不管是功能测试、接口测试、UI测试等,其实本质都是对应用程序的数据进行增删改查操作。开发人员设计好数据库模型后,各个业务功能都依赖于对该模型进行操作,从而展现出不同的数据给用户。  在面试或者是写简历时,对数据库只能一句话概括“掌握数据库的增删改查”。今天来给大家带大家了解下web应用程序的数据库设计和相关操作,也就是学习下数据库是如何设计和生成的。  在开始之前,首先要知道常用的web应用框架有django和flash框架,两者的区别可以简单形容为django像是精装房,大而全,功能极其强大,是Python web框架的先驱,用户多,第三方库极其丰富,适合企业...
            15 15 2482
            分享
          •   概述  质量管理目的是为确保项目满足承诺的需求。  1、规划质量管理  输入:项目管理计划,干系人登记册、风险登记册、需求文件。  工具及技术:成本收益分析法、质量成本法、实验设计、7种基本质量工具。  输出:质量管理计划、过程改进计划、质量测量指标(测量指标允许变动范围为公差。包括:准时性、成本控制、缺陷率、故障率、可用性、可靠性和测试覆盖度等)、质量核对单。  2、质量保证(执行质量)  确保采用合理的质量标准和操作性定义的过程。主要作用是促进质量过程改进。  输入:质量管理计划、过程改进计划、质量测量指标、质量控制测量结果、项目文件。  工具及技术:质量审计。  输出:变更请求、项目...
            0 0 1387
            分享
      • 51testing软件测试圈微信