• 1
  • 0
分享
  • 结合案例谈谈回归测试和确认测试——软件测试圈
  • 曼倩诙谐 2021-04-27 09:55:51 字数 1620 阅读 1356 收藏 0

  本人在测试岗位工作10有余,本着对测试工作的热爱,在工作岗位上一直表现还不错,在测试技术、流程方面颇有一些心得。今天就谈谈回归测试和确认测试的区别。

  一、回归测试和确认测试的误区

  其实我在之前的工作当中一直都经常说“回归测试”,基本上没有提到过“确认测试”。正式接触到“确认测试”还是从学习ISTQB认证开始。ISTQB基础级大纲中就提到了确认测试和回归测试的区别。

  一开始我还很疑惑,难道回归测试不就是确认测试吗?回归测试不就是在确认bug修改有没有生效吗?但是,实际上大错特错。确认测试是在修复缺陷后,在软件的最新版本上,重新执行之前因该缺陷而导致失败的测试用例,来确认缺陷被解决。而回归测试是在确认测试完成的基础上,确保缺陷修复不会产生副作用,也就是说不会产生修改引入。

  二、回归测试和确认测试的案例

  案例一:

  Bug概述:一个公司官网web页面,在介绍公司主营产品的页面出现了错别字,把“智能”显示成了“只能”。

  针对这个bug,基于风险及改动大小进行初步判断,这个bug只是涉及到web前端显示问题,并且修改该bug只是需要把文案修正即可,不会涉及到代码逻辑或者底层函数的变动。所以,该bug可以只做确认测试即可。

  不过,虽然不需要进行回归测试(重点指修改影响测试),可以针对这个错误,举一反三,进行扩展测试。因为“智能”这个用词可能是官网文案中的一个高频词,那么很有可能其他地方也出现一样的错误。

  案例二:

  Bug概述:一个公司官网web页面,用户进入商务合作页面,录入商务合作信息(例如,姓名、电话等)后,点击提交按钮,没有任何反应。

  针对这个bug进行分析:该bug相关的模块为重点模块,且该bug明显是基本功能存在问题,影响重大。所以,一定要做回归测试。具体的回归测试用例可以结合bug根因和修改点进行输出。该bug的原因是Web前端发送接口请求,后端响应超时。那么,针对这个bug,我们不仅要进行确认测试(测试bug解决),还要进行回归测试(避免修改引入)。用例示例如下:

  1)填写商务合作人员信息中的必填字段,然后点击提交按钮(确认测试);

  2)商务合作人员信息中的必填字段和选填字段都填写,然后点击提交按钮;

  3)商务合作人员信息填写内容达到各个字段的最大长度,然后点击提交按钮;

  4)商务合作人员信息填写内容存在特殊字符,然后点击提交按钮;

  5)针对提交按钮调用的接口进行并发测试,观察记录接口响应时间。

  三、回归测试和确认测试的应用场景

  如果你是测试工程师,我相信你一定会经常遇到这种情况,领导说你问题单回归的太不充分了,没办法避免修改引入。那么,在这个场景下,一般是你虽然名义上做的是回归测试,但是实际上你可能只做了确认测试。

  那么既然回归测试的测试覆盖大于确认测试,是不是任何时候都不能只做确认测试,一定要做回归测试呢。当然不是。

  我觉得,这个主要是基于以下几方面考虑:

  首先,评估bug修改的影响程度。如果改动大,影响到底层或者影响到系统框架,那肯定要做全面的回归测试,甚至要做详细的回归测试分析和测试设计。如果改动较小,就可以酌情只做确认测试即可。

  其次,要评估bug涉及到的功能的重要性和使用频率。如果是核心功能模块,一定要做回归测试。如果是不常用功能模块,也可以酌情只做确认测试。

  另外,负责修改bug的开发人员最了解bug的来龙去脉,所以,最好跟开发人员沟通交流,讨论bug的根因、修改方案及修改影响,结合开发人员的测试建议,再结合测试人员自身的经验,输出相关测试用例。这种回归过程是比较精准的一种回归测试的途径。

  当然,什么时候选择确认测试类型,什么时候选择回归测试类型,很多情况下,会根据项目的整体情况,基于风险对回归测试做取舍,这不仅仅是技术层面的事情了,涉及到测试策略方面的调整。


作者:快乐至上   

来源:51Testing软件测试网原创

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

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 通过前面两节带有实战的方法论的介绍,我们初步知晓了拿到一个需求文档后该如何设计用例。我们一起来简单回顾下,首先,需要充分的熟悉需求,将需求中的所有细节都做到了如指掌;其次,通过与开发工程师的沟通,了解需求实现的技术细节,从而能够更好的从技术层面做一些用例的设计,以规避对技术不了解带来的风险;紧接着,就可以用测试用例设计的基本方法去针对需求进行用例设计;最后,在用例设计基本完成后,从业务、平台、辅助工具等方面进行一轮异常情况的补充,最大限度的对用例进行一轮检查和覆盖。这一节,我们以一个实际的需求来将上面所讲的用例设计的过程进行一次具体的实践,以更好的帮助大家理解。鉴于视频类产品是大家都比较熟悉的...
            0 0 64
            分享
          • 先通过一个简单的类比说个好理解的,这个比喻是我从美版知乎Quora上看到的,觉得比较形象、好理解拿来用用。可以把WebDriver驱动浏览器类比成出租车司机开出租车。类比在开出租车时有三个角色:乘客:他/她告诉出租车司机去哪里,大概怎么走 出租车司机:他按照乘客的要求来操控出租车 出租车:出租车按照司机的操控完成真正的行驶,把乘客送到目的地在WebDriver中也有类似的三个角色:自动化测试代码:自动化测试代码发送请求给浏览器的驱动(比如火狐驱动、谷歌驱动) 浏览器驱动:它来解析这些自动化测试的代码,解析后把它们发送给浏览器 浏览器:执行浏览器驱动发来的指令,并最终完成工程师想要的操作。所以在...
            0 0 1242
            分享
          •   继 3 月 28 日发布 SU7 后,蓝鲸财经记者号称“从可靠信源获悉”,小米或将于今年年底发布 SUV 车型。  小米官方此前在“答网友 100 问”中提到了第一辆车为什么选择了轿车,而不是 SUV。小米称汽车是“工业之王”,而轿车是每个时代 “时代精神”典型代表,是每个时代 “时代精英”第一选择。  小米 SU7 定位“C 级高性能生态科技轿车”,提供双电机版本和单电机版本车型选择,并提供容量为 73.6 千瓦时以及 101 千瓦时电池可选,售价 21.59 万元-29.99 万元。作者:汪淼原文链接:IT之家(ithome.com)
            0 0 751
            分享
          • 油猴脚本管理器tampermonkey是安装在谷歌浏览器上的一个插件,它可以运行一些用户自定义的脚本。这样在访问不同页面时,如果有可用的脚本插件就会自动提示,并且产生作用。如下:同时他本身也提供了很多用户贡献的脚本以供下载(比较稳定的网站是greasyfork),当然git上面也有很多大神上传了自己写的脚本,观看这些脚本,我们可以学习别人写代码的逻辑,最最便利的是可以直接下载脚本使用,节省了许多浏览器上需要额外做的步骤。简单截图几个下载量比较高的,比较受欢迎的脚本:常见的脚本,比如:免登录操作网页,复制文本,下载提速,自动填充文本框等。介绍了这么多,那这个小插件对于我们测试有哪些帮助呢?其实这...
            1 1 10132
            分享
          • 子查询含义:出现在其它语句中的select语句,称为子查询、内查询、嵌套查询外部的查询语句,称为为主查询或外查询 分类:案子查询出现的位置:select后面      仅支持标量子查询from后面       支持表子查询※where或having后面    标量子查询※、列子查询※、行子查询(较少)exists后面(相关子查询)按结果集的行列数不同:标量子查询(结果集只有一行一列)行子查询(结果集只有一行多列)列子查询(结果集只有一列多行)表子查询(结果集一般为多行多列) 一、whe...
            15 14 2079
            分享
      • 51testing软件测试圈微信