• 0
  • 0
分享
  • 什么是回归测试?谈谈大佬眼中的回归测试——软件测试圈
  • 恬恬圈 2022-03-24 10:59:14 字数 2371 阅读 4534 收藏 0

最近,从生产上反馈了一些产品缺陷,开发、测试一起对缺陷进行了多维度的原因分析,缺陷的逃逸是由产品生产过程中多种因素造成的,其中有部分原因是回归测试的策略选用不当。在此,我们有必要聚焦一下回归测试。

先收藏:什么是回归测试?谈谈大佬眼中的回归测试

什么是回归测试

回归测试的英文名称:Regression Testing,从字面上看,是“倒退测试”。这就表明,软件有当前状态和原来状态之分。回归测试就是对软件的原来状态重新进行功能和非功能的测试,用以确保先前开发并测试过的软件在缺陷修复、配置改变、软件更新等等这些变化之后,仍能符合要求的运行(即:软件当前状态中那些没有被修改的部分的功能和非功能与原来状态保持一致)。

这里所说的软件当前状态和原来状态的概念,可以简单的认为,每一个当前提交测试的版本就是该软件的当前状态,上一个版本就是原来状态。或者,当前基线就是当前状态,上一次基线就是原来状态。具体如何区分,可以根据管理要求来制定。

回归测试的时机

不论是基于新产品的开发还是老产品的维护升级,回归测试都是一个完整测试必不可少的一部分。通常,需要进行回归测试的时机是:

1)缺陷修复

当开发人员完成对当前状态的软件进行缺陷修复之后,并且提交新的测试版本或进行了代码基线;

2)软件更新

开发人员完成新增功能和代码重构之后,并且提交测试版本或进行了代码基线。其中,新增功能往往对应于维护类的产品,对其要进行完整的测试,即对新功能的验证测试,以及回归测试。对于代码重构,应该本着运行质量永远高于代码质量的原则慎重对待,如果一旦决定重构,则必须进行全量回归测试;

3)配置改变

出于软件参数配置灵活性以及运维高效的需要,对配置文件、脚本、批处理命令、存储过程进行修改并正式通知测试部门之后。

回归测试的技术

回归测试的技术通常有以下三种:

1)全量测试用例重复测试

对当前状态的软件进行全部测试用例的执行和结果检查。这种技术由于进行的是全量测试用例的重新执行,能将缺陷遗漏的风险降至最低水平,但是测试成本(时间成本、人力成本、财务成本)很高;

2)选择部分测试用例重复测试

与上述不同的是,只对当前状态的软件进行部分测试用例的执行和检查。这种技术的最大好处是测试成本(时间成本、人力成本、财务成本)低于全量测试用例重复测试;

3)测试用例优化

测试用例的优化技术是指,从测试用例的范围即有效和效率角度出发,优化、提取对后续软件版本或特定版本有用的测试用例(集合)。

回归测试的策略

回归测试技术用以服务于回归测试策略。通常情况下,我们在日常工作中会在以下策略中进行选择。

全量回归测试策略

在一些特殊行业,比如金融、通信行业,对生产环境中软件产品质量的要求通常是严重以上级别的逃逸缺陷是0,在此情况下,我们必须用安全系数最高、风险等级最低的策略进行回归测试,以达到质量要求。这时,我们可以采用全量测试策略,使用全量测试用例重复测试的技术进行回归测试。

全量回归测试策略可以适用任何情况,它是一种不是策略的策略,虽然有效,却不

高效。

非全量回归测试策略

实际工作中,测试用例会越来越多,工作量也会越来越大,特别是维护更新类的产品。当质量要求不变,又有上线时间以及其它条件制约时,我们会选择非全量回归测试策略,使用部分测试用例重复测试技术进行回归测试。这也是我们最常使用的策略。

这种策略的核心思想就是使用测试用例优化技术,提高测试效率,减少资源投入。

但是这种策略的漏测风险也是显而易见的,比如,测试人员对代码的相依性分析能力较弱,这很容易导致忽略了可能会发现缺陷的测试用例。为了规避这个风险,除了采用测试用例优化技术之外,还应该结合基于业务风险驱动的分析方法来进行。

总体上,测试人员需要通过与开发人员、业务人员的讨论,对被测试软件进行风险分析和操作分析,了解被测软件最重要、最频繁使用的功能,也就是了解被测试软件的业务关键度与故障可能性,然后根据这两个维度的风险分析结果采用相应的测试用例(集合)优化技术进行回归测试。

具体的,在测试行业里业务影响测试是一个公理,因此,要了解被测软件的业务关键度是首要任务。其次,软件及其中的模块都有故障可能性,这二者的相关指标及示例可以用以下二表所示:

1.jpg

表1:业务关键度指标与示例

2.jpg

3.jpg

表2:故障可能性指标与示例

通过以上二表,结合业务关键度与故障可能性评估得出被测软件功能模型的风险等级,如下表所示:

先收藏:什么是回归测试?谈谈大佬眼中的回归测试

通过上表,为非全量回归测试策略中缩减测试用例集合,集中力量做最需要的测试,提供了依据,从而降低漏测风险。当然,不论表1还是表2,其中的等级划分需要测试人员的经验积累,也需要业务人员、开发人员的有力支持。

自动化回归测试策略

由于回归测试是一个反复的过程,通常我们一提到回归测试的时候,就会考虑使用自动化的方式进行。因此,可以通过使用测试用例优化技术将提取出的测试用例进行按维护、复用、自动化的步骤进行自动化回归测试平台的建设,这种方式对维护类、升级类软件(比如:市场监察、结算系统)的回归测试可以做到即有效且高效。

但是,若要达到使用自动化回归测试策略的目的,需要专门人员进行实施,从业务流驱动、数据与用例分离、组件技术、统一的平台多维度出发进行长期建设。

我们都知道,测试不可能做到完全穷尽,但我们可以通过在软件的不同阶段采取不同的回归测试策略,减少直至避免在生产上出现严重以上级别的逃逸缺陷。当然,如果从软件生产的全生命周期入手严格进行代码与缺陷管理可以更直接的降低线上产生缺陷的风险了,毕竟回归测试也是可以用于单元测试的。


作者:Atstudy网校

原文链接:https://www.toutiao.com/article/7058127781993005572/?log_from=8a64007275655_1646895245206

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

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 一、adb环境部署准备下载jdk及安卓adt1、jdk下载地址(https://www.oracle.com/java/technologies/javase-downloads.html)配置环境变量① 打开配置环境入口右键此电脑-高级系统设置-环境变量② 配置JAVA_HOME在系统变量中新增JAVA_HOME,变量值中输入jdk安装路径(C:\Program Files\Java\jdk-15.0.1 版本号及路径可能不一致,不能直接复制)③ 编辑Path在系统变量Path中新加两条:%JAVA_HOME%\bin和%JAVA_HOME%\jre\bin(每条以英语分号隔开)④ 编辑CL...
            0 0 964
            分享
          • 用工具代替/辅助人工完成软件测试活动的过程,不能为了自动化而自动化自动化测试特点可以对程序的新版本自动执行回归测试可以执行一些手工测试困难或不可能进行的测试可以更好地利用资源测试具有一致性和可重复性自动化一定要有框架自动化测试优势节省时间,提高测试覆盖率和测试精度减少手工测试人为产生的错误提供规范化的过程和一致性自动化测试局限性手工测试比自动测试发现的故障要多,自动化只能发现约15%的bug自动化测试不能提高测试的有效性,只能用于提高测试的效率自动化测试不具有想象力,没人聪明自动化测试不能取代手工测试误区:期望自动化测试发现大量新故障安全性错觉自动化测试的维护开销不适合于自动化测试情景测试频度...
            0 0 961
            分享
          •   1.道路测试流程  测试场地  1.测试场地有哪些?  对于一些要求不太高/简单的测试场景可以找一些封闭的场地,如断头路或者是城市所在地当地政府提供的诸如智能网联专用道路之类的测试道路,对于复杂或相对要求高一些的测试场景可以到专业的国家智能网联汽车试点测试场进行测试,以下提供了国内常用的示范区:  ①国家智能网联汽车(上海)试点示范区封闭测试区  ②国家智能商用车检验检测(泰兴)基地  ③中汽中心(盐城)汽车试验场  ④国家智能交通综合测试基地(无锡)  ⑤浙江5G车联网应用示范区(杭州云栖小镇&桐乡乌镇)  ⑥中汽中心智能网联汽车测试(北京)基地  ⑦中国汽研智能网联汽车(重庆)...
            0 0 937
            分享
          • 市场上看到的数百种新的应用程序和产品,在向用户发布之前会进行大量测试。自动化测试可以加快流程,通常被视为手动测试的替代品。但是,手动测试在 QA 领域中仍然具有关键作用。如果将 QA 资源偏重其中一种方法,将错失许多提高质量的机会,而平衡手动和自动测试将带来更高质量、更稳定的产品。让我们来看看手动测试仍然很重要的一些原因。UE测试测试人员可以快速识别出什么时候看起来不对劲。自动化测试脚本不会发现这些视觉问题。当测试人员像用户一样与软件交互时,他们能够发现可用性问题和用户界面故障。自动化测试脚本很难对这些内容进行高效的测试。探索性测试自动化测试只执行预先设置的操作和流程。他们需要计划和准备编写,...
            0 0 591
            分享
          •   微软在 2021 年收购了视频编辑器 Clipchamp 后,将其整合到 Microsoft 365 个人版和家庭版订阅中,最近还扩展到商业订阅。同时,Clipchamp 还推出了适用于非 Microsoft 365 订阅用户的独立高级版。  微软视频编辑工具 Clipchamp 迎来新功能:支持音频录制  今天,Office Insider 博客宣布了即将面向 Clipchamp 用户推出的几项新音频功能。其中一项功能允许用户直接在视频中插入录音。用户可以在应用程序的“录制和创建”选项卡中单击“音频”选项,然后开始录制长达 30 分钟的音频片段。录制完成后,他们可以在应用程序的时间轴中进...
            0 0 261
            分享
      • 51testing软件测试圈微信