2022 OceanBase 年度发布会,点击了解详情 了解详情
写点什么

专访 Connolly:为什么我们需要手动回归测试宣言?

  • 2019 年 1 月 09 日
  • 本文字数:2140 字

    阅读完需:约 7 分钟

专访Connolly:为什么我们需要手动回归测试宣言?

在 2018 年秋季在线测试会议上,Brendan Connolly 指出回归测试的自动化并非总是最佳的解决方案。由此,他提出了“手动回归测试宣言”(Manual Regression Testing Manifesto),并展示了如何利用该宣言区分功能测试和回归测试,以及决定测试是否需要自动化。


Brendan Connolly 在 2018 年秋季举行的在线测试大会上提出,回归测试的自动化并非总是最佳的解决方案。由此,他提出了“手动回归测试宣言”(Manual Regression Testing Manifesto),并展示了如何利用该宣言区分功能测试和回归测试,以及决定测试是否需要自动化。


手动回归测试宣言参照了敏捷宣言的理念。它是针对测试目的的公开宣言,也是用于讨论测试质量、探索测试人员贡献方式的框架。


Connolly 指出,人们通常认为“测试”问题(尤其是回归测试问题)似乎需要一些“银弹”(即某种极端有效的方式)才能解决,例如购买适用的工具、自动化全部测试、引入人工智能解决方案等。在 Connolly 看来,这些做法并非完全没有价值,只是我们是在尝试使用瀑布式软件开发时期人们所反对的那种说明性的测试方法。


手动回归测试宣言提出了以下五个理念:


  • 行为高于缺陷;

  • 一致性高于正确性;

  • 实现高于意图;

  • 整合性高于复杂性;

  • 共识高于完备。


Connolly 指出,与敏捷宣言一样,并不是说右边的部分没有价值,只是我们更注重左边的部分。


Connolly 说,敏捷革命展示了沟通和协作的价值,而不是让人们采用更多的流程和工具。测试和 QA 领域也是一样,只是实现起来很难,因为测试过程是环环相扣的,难以用适当的用语描述它。


Procore Technologies 公司高级质量工程师 Brendan Connolly 在 2018 年秋季的在线测试大会上做了演讲。在演讲结束后,InfoQ 采访了 Connolly。


InfoQ:为什么我们需要手动回归测试宣言?


Brendan Connolly:传播促成我们成为测试人员的技能和意图是展示价值的关键,而颇具挑战之处在于如何表达测试及其预期产出在整个软件开发生命周期中是如何变化的,以及为什么会发生这些变化。

回归测试是测试人员和管理人员常会产生误解的一个领域。通常的建议是通过自动化消除此类痛点,但并非所有的场景都能自动化,或是存在投资回报率不佳的问题。这是因为有些回归测试并不适合进行自动化。因此,为了能清晰明了地开展交流,我认为制定公开宣言会有所帮助。


InfoQ:如何解释“行为高于缺陷”(Behavior over Bugs)这一理念?


Connolly:如果测试人员未找出软件缺陷,他们就很难有为项目作出贡献的成就感。对于测试新手尤为如此。

功能测试是深挖问题和错误的时间。回归测试旨在最大限度降低中断,我们并不希望新功能对已有功能产生意外的中断。一旦测试人员开始回归测试以便查找错误,那么他最终需要花费大量的时间重新测试功能。根据我的经验,这更有可能发现一些与最新的代码变更毫不相干的小问题,也可能会重新发现一些团队曾经选择忽略的旧问题。

即便测试人员发现了一个缺陷,除非是一个严重的缺陷,并且与当前的变更切实相关,否则只是在引入干扰。任何在回归测试过程中发现的错误都需要根据版本的发布压力做出权衡。这可能会降低测试人员在团队中的信任度,因为人们会认为测试人员似乎更专注于发现软件缺陷,而不是如何向客户提供新功能。

更为重要的是,我们应确保在做出变更时,客户所期望和依赖的行为仍然存在。


InfoQ:如何解释“共识高于完备”( Common over Complete)这一理念?


Connolly:在测试人员职业生涯的某个时刻,他们都会被问及他们是否测试过所有的东西。事实上,对于任何一个项目,测试人员必定会做出一些权衡。测试人员所做的是尽量在可用的时间内最大程度地降低风险。

回归测试并非要确保所有的边界条件都经过验证,也并非意在确保可用性、性能或安全性。虽然这些方面都十分重要,但这些测试不应该发生在版本发布之时。

一旦测试人员接受了完备测试这一重担,也就承担了各种责难。作为测试人员,我们需要将讨论引导到如何制定一套完整的策略,即如何用回归测试组件确保客户的核心体验与设计的一样。


InfoQ:如何使用该宣言改进手动回归测试?


Connolly:手动回归测试宣言提供了多项内容。首先,它给出了区分回归测试和功能测试的明确界限,这通常是测试人员和管理层所面临的一个挑战。 宣言的每个核心原则都聚焦于两个具备价值的测试要素上。通过对比两个要素的相对价值,我们就可以定义整个发布周期的测试期望。我们并不是要区分两个要素孰优孰劣,而是给每个要素一定的时间和空间,让测试人员去指出其中的差异。

其次,宣言提供了一个用于讨论测试质量、探索测试人员贡献方式的框架。人们很容易将测试人员视为恶意的软件破坏者,而实际上,我们可能会和软件开发人员一样甚至比他们还要喜欢我们所测试的软件。为确保软件正常运行,即便我们与开发人员之间毫无联系,我们也会花费大量时间测试代码。团队花了大量时间讨论代码标准和实践,但是代码本身比测试和质量更加真实和可度量。测试人员之间并不存在什么公共语言,所以,每个测试人员都必须能够表达代表自身动机的想法。

我希望该宣言能激发测试人员去思考目前在做的事情,搞清楚质量对他们以及处于软件开发生命周期不同阶段的团队来说意味着什么。这样他们就能够更轻松地表达他们想要完成的事情,然后更好地向团队提出问题。


查看英文原文: The Manual Regression Testing Manifesto


2019 年 1 月 09 日 11:006389
用户头像

发布了 390 篇内容, 共 109.5 次阅读, 收获喜欢 251 次。

关注

评论 1 条评论

发布
用户头像
扯淡
2019 年 01 月 09 日 10:43
回复
没有更多了
发现更多内容

提高儿童被拐意识

Tiger

28天写作

智慧社区建设解决方案,智慧社区综合服务平台开发

电微13828808271

区块链农产品溯源系统开发,助力农业品牌打造

电微13828808271

数据分析中应该掌握的五个数学概念

好奇分析

数据分析 Excel 统计学 基本概念

QCon-OPPO数据平台Cloud Lake 降本增效实践

OPPO数智技术

运维 后端 数据

别卷了!!!新入职的卷王,不仅加班还手写Spring源码,真的让人奔溃!

不想秃头

Java spring 源码 面试 多线程

Vue路由守卫有哪些,怎么设置,使用场景等

编程江湖

Vue 路由器

大数据中心通过Perforce软件版本管理系统助力动力系统开发

龙智—DevSecOps解决方案

perforce 混合动力

Tapdata Cloud 版本上新!新增ClickHouse,ADB MySQL等5个数据源支持

tapdata

MySQL oracle

如何为你的听众设计一张精密的地图

将军-技术演讲力教练

数据库事务与事务隔离级别

编程江湖

数据库 java编程

效率高到爆炸的IT运维软件您安装了吗?

行云管家

运维 IT运维 运维i工具

免杀技术的发展

喀拉峻

网络安全 安全 信息安全 免杀

Flutter 2 渲染原理和如何实现视频渲染

声网

flutter 大前端 音视频

Flink是如何支持批流一体的

编程江湖

大数据 flink

协程实现方式——从程序控制流转移谈起

Jowin

协程原理

架构实战营4期第一模块作业

jialuooooo

架构实战营

EasyRecovery如何恢复md文件

淋雨

Camtasia

Java 面向对象精讲【下】

XiaoLin_Java

面向对象 12月日更

一劳永逸,使用 PicGo + GitHub 搭建个人图床工具

AlwaysBeta

GitHub 工具 PicGo 图床

教你用 JavaScript 设计一个 Neumorphism 风格的数字时钟 (代码详解)

海拥(haiyong.site)

大前端 js 28天写作 签约计划第二季 12月日更

如期而至-用户购买时间预测(上)

索信达控股

模型 购买预测 购买行为 精准营销

服务器减少一半,TDengine在华自科技的落地实践

TDengine

数据库 tdengine 时序数据库

质量基础设施“一站式”服务平台开发,一站式检验检测服务平台

电微13828808271

nginx负载均衡策略你知道多少?

恒生LIGHT云社区

负载均衡 服务器 ngnix

【技术干货】前端性能优化——快速定位代码bug

云智慧AIOps社区

开源 大前端 技术分享 技术干货

Linux一学就会之文件的归档和压缩tar命令

学神来啦

Linux 运维 ZIP tar命令 linux云计算

等保2.0正式发布了吗?核心思想包括什么?

行云管家

网络安全 等保 等级保护 等保2.0

架构实战营模块一作业

Sindorei

「架构实战营」

取代FMEA风险评估:如何在敏捷世界中管理风险

龙智—DevSecOps解决方案

风险管理 FMEA

2022 阿里云飞天技术峰会 - 主论坛

2022 阿里云飞天技术峰会 - 主论坛

专访Connolly:为什么我们需要手动回归测试宣言?_文化 & 方法_Ben Linders_InfoQ精选文章