写点什么

敏捷测试者的担当

  • 2015-12-11
  • 本文字数:2057 字

    阅读完需:约 7 分钟

Agile Testing Days 2015 上,Marnix van den Ent 做了一个报告,在报告中他解释了测试员如何标志并且质疑(测试)过程。他将测试员们看成一个丑角这个观点:“一个团队和团队进度的仆人,就像意大利的丑角一样,测试员在那里帮助大家理解发生了什么”。

InfoQ 采访了 Van den Ent:测试如何被看作提出问题、测试员能做什么来发展询问的艺术、以及一个敏捷测试员如何标志并质疑过程与实践、测试员可以适应并使用的 XP 实践和测试员如何在追溯会议中作贡献。

InfoQ:你提到测试员用测试对产品提出质疑;他们天生富有问问题的能力。你可以给一些测试可以被看作问问题的例子吗?

Van den Ent:在测试象限中,Brian Marick 将支持团队的测试与批判产品的测试区分开来。个人可以看出问封闭和开放问题的不同。

并且,探索性测试是一个极好的例子,在这种测试中我们通过对被测系统提出开放性问题。在有些测试中我们不知道系统的回应——但是我们可以确定真实的回应是不是全部正确。系统行为是什么?一个测试可以让这个问题变得有形,例如一个具体的场景:当一个用户用合法的用户名和不合法的密码登录了三或四次系统,但是在这三到四次登录中间关掉会话很长一段时间,系统会做出什么反应?

InfoQ:测试员可以做些什么来发展提问题的艺术,并帮助敏捷开发团队交付更好的产品?

Van den Ent:这种帮助可能会发生在两个层面上。第一,当看待“我们如何测试产品”时,我们有几个方法来实现。帮助我们弄清楚测试是关于什么的方法是学习(老派的)结构化测试,其中测试活动和测试职责是针对单独的功能、单独的阶段和单独的任务等。这种拆开的方法帮助我们弄清楚在测试中我们要处理什么。并且它以某种方式声明了我们可以或应该怎样做测试。在语境驱动的测试学校,人们比其他测试学科的学校更多地研究怎么测试。这就是“质疑产品的艺术”被培养出来的地方。

接下来,当我们着眼于其他层面来帮助团队交付软件:我们怎么样能帮助或改善他们工作的方式?这也许是 Scrum 管理者与敏捷开发指导擅长的领域。既然这样说,很容易推断出这种假定:责任都降临在了这些角色中而不是其他的人中。当我们做之前提到的测试时,你就会面临那些团队在开发过程中做决定的后果。所以,作为一个测试员就可以看出这些决定的弊端。那时,一个人学会看这些决定并对自己和他帮助改善开发过程的团队提问题。这种问题应该针对一个相对广阔的范围,因此很难阻止它进入一个固定的模式。你甚至不能说封闭性问题不好,因为在某些情况下你也许需要驱使它。

InfoQ:你可以详细阐述一下敏捷测试员如何标志并对团队和团队周围的组织中用到的过程和实践提出问题吗?

Van den Ent:就像我之前说到的,当做测试的时候,个人可以观察局势。例如,如果最重要的用户故事(应该最早被开发的用户故事)的最后一轮测试只可以在第二个冲刺的一半做,你将有预感过程不会像那样乐观。假定用户故事不会像可以问做了什么决定一样大;例如,团队有没有在同时做几个故事上达成统一意见;为什么?

一个不同的情况是一个(外部操作的)产品负责人相信他和团队成员的电话交流足够好,所以他只在一个冲刺中与团队见一次面。在这种情况下,结果表明,产品负责人与管理人员的意见一致阻止了这种情况——然后,也许强烈的个人说服力终究会帮助我们改变这样的情况。

InfoQ:你有一些测试员可以在敏捷开发中适应并使用的 XP 实践例子吗?

Van den Ent:我个人发现了极限编程是一个很好的资源,测试员可以从中学到“新的”对他们团队有用的实践。在极限编程中,一个实践就是共享代码所有权。测试也是这样。有很多这样的团队,其中测试员都有自己的技巧并且他们完全信任自己这样做。这不是很好。团队中的测试员应该意识到共享想法、“设计”测试用例的方法以及帮助提高测试质量和效率的测试。配对和广泛的审查是一个可以令他们做到这点的方法。

XP 还有“简单”这个价值。在很多的情况中,测试员很简单就能前进。但是也有很多情况中,被测试的行为取决于很多参数、值和它们的组合!使这样的测试保持简单才是与团队成员和关键用户交流你的测试的关键。

InfoQ:你可以解释一下,在你看来,是什么使追溯会议在敏捷开发中如此重要?测试员怎么对追溯会议做贡献?

Van den Ent:首先,我要感谢你问出这个问题!学习是敏捷开发的工作方式中一个关键的方面。没有学习就没有敏捷。追溯会议是反映并提升团队工作的标准方式。你经常会听到说追溯会议就像强制性的仪式一样无聊。但是那样的话,你就没有在学习。保持开放性的思维和持续提出问题,以便提升团队的过程,这样能帮助整个团队学习。测试员天生富有问问题的能力。测试员应该学习不仅仅只对产品提出问题,也应该向团队和过程“提出”问题。

查看英文原文: Agile Testers can be a Harlequin


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

2015-12-11 18:001515
用户头像

发布了 218 篇内容, 共 67.7 次阅读, 收获喜欢 76 次。

关注

评论

发布
暂无评论
发现更多内容

SpringCloudAliBaba组件之Nacos精讲【注册、配置中心】

XiaoLin_Java

微服务 nacos 配置中心 springcloudAlibaba 签约计划第二季

大厂算法面试之leetcode精讲16.set&map

全栈潇晨

LeetCode 算法面试

【Dart 专题】Generics 泛型 <T>

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 12月日更

刚提测就改需求,我是渣男吗?

小傅哥

Java 加班 小傅哥 需求迭代 产品功能

linux重要目录之usr和var

入门小站

Linux

模块五作业:设计微博系统中”微博评论“的高性能高可用计算架构。

dean

架构实战营

[Pulsar] JDBC core sink connector介绍及实现

Zike Yang

Apache Pulsar 11月日更 12月日更

大厂算法面试之leetcode精讲15.链表

全栈潇晨

算法 链表 LeetCode

迈向云原生:名企FreeWheel应用架构演进

博文视点Broadview

设计微博评论架构

张靖

#架构实战营

【LeetCode】相对名次Java题解

Albert

算法 LeetCode 12月日更

设计模式【4】-- 建造者模式详解

秦怀杂货店

设计模式

SpringCloudAliBaba之微服务常识扫盲

XiaoLin_Java

架构 微服务 springcloudAlibaba 签约计划第二季

「阿里云可观测系列公开课」正式发布,多维度助力企业强化可观测能力

阿里巴巴云原生

阿里云 云原生 直播 可观测 公开课

在线火星文转简体中文工具

入门小站

工具

微博系统中“微博评论”的高性能计算架构

波波

「架构实战营」

模块五:如何设计业务高性能高可用计算架构? --学习总结

小鹿

极客时间

Nydia

28天写作 12月日更

python 爬虫爱好者必须掌握的知识点“ 协程爬虫”,看一下如何用 gevent 采集女生用头像

梦想橡皮擦

12月日更

react源码解析10.commit阶段

buchila11

React react源码

华云大咖说 | 安超信创桌面云金融行业解决方案

华云数据

手把手搭建微服务项目,他到底有什么不一样?

XiaoLin_Java

架构 微服务 springcloudAlibaba 签约计划第二季 单体项目

SpringCloudAliBaba 组件之 Ribbon精讲【负载均衡】

XiaoLin_Java

负载均衡 微服务 Ribbon springcloudAlibaba 签约计划第二季

将远程服务像本地一样调用?Feign来帮你!

XiaoLin_Java

架构 微服务 Feign springcloudAlibaba 12月日更

模块5作业

忘记喝水的猫

架构训练营

react源码解析9.diff算法

buchila11

React React Diff

Redis之Pipeline详解

李子捌

redis pipeline 28天写作 12月日更

岁末整理-2021

将军-技术演讲力教练

中年人的沉重1

张老蔫

28天写作

Linux里的“宝塔”,真正的宝塔!详细教程

老表

Linux 开发工具 安装宝塔 跟老表学云服务器

Git进阶(三):webstorm 的 git 切换分支

No Silver Bullet

git 12月日更

敏捷测试者的担当_研发效能_Ben Linders_InfoQ精选文章