写点什么

专访 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:006742
用户头像

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

关注

评论 1 条评论

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

上云?!下云?!这难倒了孙悟空!

白洞计划

云计算

KaiwuDB 分布式系统 Range Split & Merge 原理详解

KaiwuDB

数据库 数据分区

一文让你知道,云计算环境下云管平台的重要性

行云管家

云计算 云服务 云管平台 云资源

解除8M地图限制 冰封王座 mac下载 含魔兽争霸3攻略

Rose

游戏

探索未来科技:深入了解设备交互API如何改变我们的生活

测吧(北京)科技有限公司

测试

新一代实时数据集成框架 Flink CDC 3.0 —— 核心技术架构解析

Apache Flink

Databend 开源周报第 135 期

Databend

Python中的代码优化和性能优化

技术冰糖葫芦

API 接口 API 文档 API 策略

详细教程:如何制作产品介绍二维码(一)

草料二维码

二维码 草料二维码 产品宣传 产品介绍 品牌宣传

印刷行业实施MES管理系统有哪些重要的意义

万界星空科技

工业互联网 制造业 mes 印刷行业 万界星空科技

程序员有哪些常用的技术网站呢?

小魏写代码

魔法门之英雄无敌3下载,死亡阴影 for Mac中文版 兼容m1

Rose

游戏

初赛仅剩两周!如何提交作品?手把手教你如何参与 openInula 挑战赛

openInula

开源 前端 前端框架 创新大赛

扫描全能王发布2023“绿色数据”:减碳超12万吨,相当于多种700万棵树

合合技术团队

环保 扫描全能王 人工智能、 植树节

mac office 365 商业专业版破解 含Office 365激活工具 兼容M2/M3

Rose

微软 Office

ICP Rust CDK|课程介绍

TinTinLand

学习 黑客 编程语言 #Web3 ICP

图数据库基准测试 LDBC SNB 系列讲解:Schema 和数据生成的机制

NebulaGraph

图数据库 LDBC

ICP Rust CDK|IC和Rust简介

TinTinLand

学习 黑客 编程语言 web3 ICP

【论文解读】多模态大模型综述

合合技术团队

人工智能 深度学习 大语言模型 多模态大模型

Solidity案例详解(五)服务评价合约

BSN研习社

区块链 Solidity

网络安全AI智能体公司「云起无垠」获数千万元天使+轮融资,致力于大模型与网络安全深度融合的技术研究

云起无垠

安卓设备上的文件无法通过usb在mac电脑上识别?

Rose

专业且功能齐全的pdf编辑软件 acrobat pro dc 2023中文版 mac/win

Rose

ToDesk专属功能全解析:多屏操作与高效协作并重

小喵子

远程办公 远程协作 远程控制 远程桌面 多屏

Downie 4 for Mac(最好用的视频下载软件) 4.7.2直装版

Rose

API 性能测试教程:让你的应用运行更加顺畅

Apifox

测试 性能测试 接口测试 测试工具 API 性能测试

2024年值得尝试的22款在线管理软件盘点!

爱吃小舅的鱼

项目管理软件 项目管理x

发布DDD脚手架到Maven仓库,IntelliJ IDEA 配置一下即可使用

EquatorCoco

Java DDD IDEA

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