InfoQ Geekathon 大模型技术应用创新大赛 了解详情
写点什么

创造力与测试:可否共存?

  • 2015-03-20
  • 本文字数:2319 字

    阅读完需:约 8 分钟

2014 年在波茨坦(德国北方都市)的敏捷测试日大会上,Jan Jaap Cannegieter 分享了使用大脑的不同面向来优化测试,他将在 2015 年荷兰的敏捷测试日大会上再次分享这个演讲。这个演讲主要谈论了用创造力来提升测试技能。创造力对测试人员真的如此重要吗? 这个变化是由于敏捷吗?

InfoQ 采访了 Cannegieter,谈论了有关敏捷如何改变测试、测试中的创新与思考、敏捷测试人员的技能以及针对敏捷测试中测试人员如何做到这步?

InfoQ:您是否认为敏捷对测试改变了很多?

Cannegieter这是肯定的,总之,这是过去 20 年来对系统开发,还有测试最大的改变之一。如果你从理论的观点来看,敏捷中没有测试人员,在敏捷中你只有产品负责人、Scrum Master 和团队成员。但是,因为大多数的团队都需要测试技能,因此团队中通常会有测试人员。

InfoQ:的确,这是事实。但是,测试仍旧只是检查系统是否按照所设计的运行吗?

Cannegieter也是,也不是。测试人员,或者说团队都是测试人员,是负责检查系统是否按照所设计的运行。但与此同时,最终用户、产品负责人以及团队成员想从测试中期待更多。这个系统,或者部分系统是否解决了最终用户的问题?这个 Sprint 的目标是否达成?解决方案是否最优?仅仅比较解决方案与用户故事已不再够用,在敏捷中,我们需要思考型的测试人员(Thinking Tester)。

InfoQ:什么是“思考型的测试人员”?

Cannegieter测试人员观察的角度超出了他或者她的任务分配及书写需求。书写需求或者其他类型的文档,那仅仅是知识迁移。当系统与书写的需求保持一致时,并不意味着它是一个好的系统,或者满足了产品负责人和其他用户的目标。所以说,测试人员观察的角度需要超越这些书面需求,不断地问问题。

几天前,我曾测试我们的知识库,我看到一些东西并不符合逻辑。开发人员说这个与需求是一致的。这也许是事实,但却不对。我们联系了相关的干系人,即需求的所有者,他承认那个需求错了。

InfoQ:测试过程意味着什么?

Cannegieter大部分情况,它意味着测试人员不需要预先编写详细的脚本。更多的则侧重于实际测试。当然,这与敏捷宣言所宣称的“工作的软件高于详尽的文档”完全一致。但对于大多数测试人员来说仍然是一个巨大的转变。因为他们已经习惯了测试执行阶段的引导脚本。现在他们有了更多的自由度,必须当场决定下一步最好做什么。因此测试更加灵活。

InfoQ:测试自动化是什么?它不需要详尽的测试脚本吗?

Cannegieter是的,当然需要。但自动化测试本来就是一致性检查。第一次测试的时候,你不能自动化,至少不是通过录制 - 播放的方式。这种一致性检查已经高度自动化了,但是测试的思考部分是不能自动化的。对于思考型的测试人员来说,最重要的工具就是他或者她的眼睛,来看到底发生了什么,通过他或者她的大脑,来解释发生了什么并且决定这是否是好的。

InfoQ:那么,对于个体测试人员的技能来说,测试有什么改变呢?

Cannegieter更少的测试引导脚本,测试人员需要更有创造性。而且这对一些测试人员来说是很困难的。我经历过不止一次,测试人员想根据详尽的文档继续制作测试脚本。但是开发人员不停地说:工作的软件高于详尽的文档。在其中的一个项目中,我做了一个工坊来介绍测试,参加的人有测试人员、开发人员、最终用户以及其他的干系人。测试是基于测试目标的,并且在这个过程中,参与人员必须设计他们的测试。经过了一段时间他们才习惯了不用以前制作的测试引导脚本,过了一会,大多数测试人员更加喜欢这种方式了。这意味着更多的自由度,测试人员必须去适应。

InfoQ:测试人员如何做到这一步呢?

Cannegieter首先,对新人来说这不是一个问题,即创造性与灵活性对他们不是问题。一些守旧的测试人员必须增强他们的灵活性和创造性。对于测试过程,这意味着测试人员需要精通测试与文档测试中不同的方法。一些系统或者部分系统仍旧需要借助详细的测试脚本测试,例如复杂的计算。其他的系统需要通过基于测程的测试(Session Based Testing),测试通过测试目标、用户期待系统想要实现的语句来指导。并且有些测试需要使用自由的探索性测试,测试人员事先没有任何指导。因此测试人员必须精通所有这些方法。

另外一点,测试人员必须提高他们的创新能力。这是我在荷兰的敏捷测试日大会上分享的主题。我将会分享更具有创造力的 12 种方法。其中的一个例子我称它为基于角度的测试,是说每一名测试人员、或者用户考虑从不同的角度进行测试。角度测试的例子如:系统是否支持这个流程;系统有哪些好的方面;用户是否有可能拒绝使用这个系统等等。这种验收测试的方法极大地提高了测试人员的创造性。而这只是我给听众分享有关更具有创造力的十二个技巧中的一个。

InfoQ:可否说守旧的测试人员正面临死亡?

Cannegieter不是, 我们仍然需要他们的技能,并且肯定地说,在一些项目中我们还会预先制定测试脚本。但并不总是像以前那样地详细。并且,我看到一些测试人员在性能测试、安全测试以及测试工具上具有丰富的经验。在未来几年,我们仍然急需这样的测试人员!

InfoQ:敏捷测试对您意味着哪些改变?

Cannegieter:自由!过去几年我作为测试人员感觉有点无聊。大多数的时间我都是在读文档和写测试用例。我所关注的测试执行部分只是我工作的一部分,而我却最喜欢那部分。

首先,这也改变了我的职业生涯!向需求和严格原则发展。去年,我被要求测试 VDI 虚拟桌面架构的一个平台;我使用了基于测程的测试和自由的探索测试,并且大写字母 F 很有趣。作为测试人员,我必须本能地立即回应意外的情况,并且我工作的团队是有着共同目标的、非常有凝聚力的团队。我感觉我从预先详细的测试脚本制作的局限中释放出来,它给了我更多的能量。

查看英文原文: Creativity and Testing: Do They Go Together?

活动推荐:

2023年9月3-5日,「QCon全球软件开发大会·北京站」 将在北京•富力万丽酒店举办。此次大会以「启航·AIGC软件工程变革」为主题,策划了大前端融合提效、大模型应用落地、面向 AI 的存储、AIGC 浪潮下的研发效能提升、LLMOps、异构算力、微服务架构治理、业务安全技术、构建未来软件的编程语言、FinOps 等近30个精彩专题。咨询购票可联系票务经理 18514549229(微信同手机号)。

2015-03-20 03:391168
用户头像

发布了 55 篇内容, 共 12.6 次阅读, 收获喜欢 6 次。

关注

评论

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

👨‍💻Mybatis源码我搞透了,面试来问吧!写了134个源码类,1.03万行代码!

小傅哥

源码分析 小傅哥 mybatis 大厂面试 面试经验

Kubernetes核心技术剖析和DevOps落地经验|研发效能

laofo

DevOps k8s 研发效能 工程效率

动态化UI在Qunar客户端首页的应用

Qunar技术沙龙

活动报名|聚焦案例实践,Apache Pulsar 在线 Meetup 火热来袭

腾源会

开源 腾源会 Apache Pulsar 社区

Git .ignore 文件规则不生效

攻城狮杰森

git IDEA 协同开发 7月月更

CSS 中 ::before 和 ::after 伪元素的几个实际用途

南城FE

CSS 前端 伪元素 7月月更

一站式 DevOps 平台,让开发大不同

SoFlu软件机器人

阿里云机器学习平台PAI与华东师范大学论文入选SIGIR 2022

阿里云大数据AI技术

Transformer 机器学习/深度学习

LED显示器好用吗?

Dylan

大厂都在玩的容器技术到底是什么?

慕枫技术笔记

容器 云原生 7月月更

CSS Houdini:用浏览器引擎实现高级CSS效果

vivo互联网技术

CSS 前端 引擎 css动画

Python 入门指南之类

海拥(haiyong.site)

7月月更

“Shift”键——一直被人低估的功能键

Geek_2d6073

如何提交一个PR?完成这 6 点就可以了

OpenAnolis小助手

开发者 pull request 龙蜥社区 【人人都可以参与开源】 社区建设

开源协议详解

源字节1号

开源 软件开发 前端开发 后端开发

更贴心、更好学的Python自动化办公教程!

博文视点Broadview

浅入浅出Mybatis(一)

ES_her0

7月月更

Kafka面试22连问,看完直接跟面试官聊骚都没问题

程序知音

Java kafka 程序员 后端 程序员面试

web技术分享| 基于vue3实现自己的组件库第二章:Pagination组件

anyRTC开发者

前端 Web 音视频 Vue3 Pagination

利用ECS服务器搭建安防视频监控平台

DS小龙哥

7月月更

百花齐放的家居行业联盟,三翼鸟率先撬动三个赛点

脑极体

双目立体匹配之代价聚合

秃头小苏

7月月更

SAP ABAP 系统同微软 Office 套件进行 Desktop Integration 的工作原理

Jerry Wang

Office SAP abap Netweaver 7月月更

【LeetCode】实现一个魔法字典Java题解

Albert

LeetCode 7月月更

Python+JS逆向哪里多?必然是登录逻辑,投资界登录pwd参数解析

梦想橡皮擦

Python 7月月更

微服务项目中,Spring Security 比 Shiro 强在哪?

冉然学Java

编程 微服务架构 spring security Java’

低代码实现探索(四十四)检查器待研究

零道云-混合式低代码平台

打造“拉动式”企业培训管理方案,释放人才潜能

明道云

羊城“论剑”!大湾区百家AI企业共话如何打牢人工智能“长链”的发展根基

Geek_2d6073

【Docker 那些事儿】如何安全地停止、删除容器

Albert Edison

Docker Kubernetes 容器 云原生 7月月更

使用Gitlab Jenkins Docker建立CI部署方案

沃德

程序员 jenkins 7月月更

  • 扫码添加小助手
    领取最新资料包
创造力与测试:可否共存?_软件工程_Ben Linders_InfoQ精选文章