50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

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

  • 2019-01-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-01-09 11:006872
用户头像

发布了 391 篇内容, 共 153.7 次阅读, 收获喜欢 257 次。

关注

评论 1 条评论

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

与火山引擎合作深化,观测云携一站式监控解决方案登陆万有商城

观测云

火山引擎

明基 RD280U显示器——程序员之选

Yan-英杰

程序员

什么工具可以解决团队协作障碍?

秃头小帅oi

深入编码规则:构建灵活且可扩展的编号生成器

inBuilder低代码平台

低代码

云服务器的故障率比物理服务器更低吗?

Ogcloud

云主机 云服务器 香港云服务器 美国云服务器 云服务器租用

NFTScan | 11.25~12.01 NFT 市场热点汇总

NFT Research

NFT\ NFTScan

官方提供平台,导师倾情陪练,助力学生玩转开源|Greptime 参与「开源之夏」的第二年正式收官!

Greptime 格睿科技

数据库 开源 活动 开源之夏

OKR工作法软件大盘点,7款优秀工具助力目标管理

易成研发中心

SOL项目开发代币Dapp的基本要求

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 交易所开发代币开发

打造去中心化交易平台:公链交易所开发全解析

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

Web自动化测试中的元素定位与显式等待

测试人

软件测试

Spring Cloud+Nacos+KMS 动态配置最佳实践

阿里巴巴云原生

阿里云 云原生

一线GPMI,牵动智能大屏;一触星闪,点亮万家欢声

脑极体

AI

Byteman 让 i++ 百分百线程不安全

FunTester

测试是如何跟进和管理 bug

易成研发中心

bug bug管理

让每笔营销费用发挥更大价值,为生意持续增长创造可预见的未来!

赛博威科技

数字营销 营销费用管理 赛博威

CDN的作用以及哪些企业适合使用CDN?

Ogcloud

CDN 网络加速 CDN加速 CDN技术 CDN网络加速

签约案例|GreptimeDB 为数据驱动的汽车应用带来安全高效的车云一体解决方案

Greptime 格睿科技

数据库 车联网 汽车 车云一体

小程序SDK在跨端app开发是否有优势?

FinFish

跨端应用开发 小程序容器技术 跨端技术 跨端app开发 小程序SDK

如何管理测试用例

易成研发中心

测试管理 测试管理工具 测试用例管理

中国恩菲:有色金属行业如何使用 IoTDB?|用户零距离第一期

Apache IoTDB

Hume AI 语音控制功能:创建个性化语音;李飞飞空间智能首个模型:单图生成 3D 交互场景丨 RTE 开发者日报

声网

TinyPro Vue 1.1.0 正式发布:增加细粒度权限、页签模式、多级菜单,支持Vite/Rspack/Farm等构建工具

OpenTiny社区

开源 前端 组件库 OpenTiny TinyVue

如何选择团队网盘?企业常用的8款工具盘点

易成研发中心

ETL工具观察:ETLCloud与MDM是什么关系?

谷云科技RestCloud

系统集成 ETL 数据集成 MDM

掌握API开发:分步实操技巧

幂简集成

API 入门指南

手撕单例的 5 种写法!

王磊

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