【QCon】精华内容上线92%,全面覆盖“人工智能+”的典型案例!>>> 了解详情
写点什么

测试人员面临的测试挑战和必备技能

  • 2017-02-07
  • 本文字数:2713 字

    阅读完需:约 9 分钟

结果不确定的复杂 AI 系统给测试人员和程序员带来了挑战。Fiona Charles 认为,这样的系统在高影响、高风险应用程序中将越来越普遍。测试人员应该提升他们的思考能力和学习能力,发展一些个人优势,比如说勇气和良好的判断力。

软件测试顾问和项目测试经理 Fiona Charles 将在 2017 年欧洲测试大会上发表主题演讲“提升可能性”。

软件日新月异地发展,我们不断设计不同的方法来创造并实施它,并设计更先进的工具来协助创造实施过程中的每个阶段。软件测试不再有健壮的主导性典范。我们对如何测试,何时测试,谁来做测试,甚至我们是否需要测试的态度都因为有了新的方法和技术而发生改变。

InfoQ 采访了 Fiona Charles,询问了她关于测试必须解决的主要挑战,这些挑战会如何影响测试行业,测试人员期望能提供的价值,测试人员需要具备的基本技能,如何获得这些技能,以及测试人员的未来会将如何。

InfoQ:目前测试中面临的主要挑战是什么?

Fiona Charles:我觉得基本的挑战和我们现在软件测试中已有的那些有什么不同,我们从来没有时间和能力来测试所有方面的东西,所以我们要决定测试什么,如何彻底测试,以便我们为利益相关者提供最好的产品。然后做出这些战略决策,如何能最有效地、最高效地进行测试?

一直以来覆盖面都是一大挑战。迄今为止,在主流之外,结果不确定的复杂 AI 系统也存在着重大挑战。这样的系统在高影响、高风险应用程序中将越来越普遍,我认为更多的软件从业者会接触到对它们的编程和测试。举一个例子,我们看到 AI 系统现在在美国司法系统中做出有关判决和假释的决策。我们从媒体获悉,“学习”系统很容易受到为它们选择的学习数据的影响。显而易见的是,它们的测试都很具有挑战性,甚至会给程序员和测试人员带来道德挑战。

InfoQ:这些挑战会如何影响测试行业?

Charles:专业测试的实践总是在变,部分是为了应对测试挑战,但主要是由于技术和软件开发方法的改进。我认为它总是在改变的,并且是为了类似的原因在改变的。

当然,敏捷的出现已经改变了测试人员在团队中的角色,以及他们在软件项目中要做的事情。以前所谓的“瀑布”方法经常耽误测试人员的时间和技能,他们需要几周或几个月忙于设计测试,由于几乎没有人做过任何单元测试,他们用了这么多时间就发现了一些很简单的错误。现在这样可怕的时代已经一去不复返了,大多数测试人员都进入了新的阶段(至少从表面上来看是这样的)。

我不确定敏捷是否已经成功兑现了高质量软件的承诺,但是回到更加集成和协作的程序员和测试人员团队的方面,敏捷是成功了。我之所以称之为“回到”是因为这是我们很多老手一开始接触的测试:在集成、协作的团队里,每个人都做出贡献,做出了想要得到的软件,看到客户开始使用让我们很高兴。

我发现的缺点是,从没在敏捷项目之外的项目工作过的测试人员可能永远不会学习怎么处理复杂性问题,这让我很担忧 AI 项目和大型软件项目的未来。当你只需要处理少部分功能的时候,不需要认真分析、战略性思考。在可预见的未来,社会仍然需要一些非常大的软件项目,这些项目需要拥有很强能力和领导能力的测试人员的投入。测试人员可以从哪里学到这些必要的大项目技能呢?

目前据我所知,只有一名对 AI 项目有深入了解的测试人员:Bill Matthews。Matthews 提醒测试人员需要发展自己思考、处理复杂性的能力,我再次认为,潜在的问题就是大多数测试人员都在做敏捷项目。

InfoQ:测试人员期望能提供的价值有没有发生变化?

Charles:是的。但正如我上面所说的一样,实践和期望都改变了,然后再次发生了变化,不仅仅变了一次,可能它们会继续改变。可能大多数的结果是有益的,但有些结果可能是有害的。

目前,许多测试人员也担任他们团队的质量督导员,他们在测试的同时也要指导程序员如何改进自己的测试。我认为这样的工作模式是非常积极的。增加自动化单元和服务级别的测试也是非常积极的。

如果经理或程序员觉得,程序员或自动化测试完全足够,团队中不需要专业的测试人员,这就是不太积极的。很久以前就有关于这个问题的争论,现在不值得在这里深究,但这个问题很重要。如果你满足正确的标准,你系统里的错误对利益相关者造成的影响很低,甚至没有造成影响,那没有测试人员无可厚非。但情况不总是这样的。

新的变化趋势是现在需要更快、更频繁地发布产品,所以集成功能测试的时间越来越少,这对于错误会造成严重问题的系统是一种很大的挑战。

InfoQ:你认为哪些技能对测试人员来说是必不可少的?

Charles:这个问题可大可小。我一开始就说,测试人员需要的不仅仅是技能。作为测试人员,还需要发展个人的优势或特性,比如说勇气和很好的判断力。

我已经在我博客中的一篇博文:测试人员可以受益的一些技能和个人素质中的思维导图上,介绍了测试人员的基本技能和个人素质列表。思维导图中的技能和特性从某种程度上来说也是相关联的。测试人员可能不会在所有情况下使用所有技能,但在职业生涯中,我们大多数人总能在某段时间用到某个技能。自从发布以来,我也在不断完善列表。我将会在主题演讲中详细举例。

简短来说,我会说是思考和学习的能力。就像人脑是中央测试工具一样,思考也是测试人员的干细胞技能。当然,思考这个话题覆盖面很广,包括逻辑、创造力、批判性思维、分析、综合、问题解决等等测试人员需要的很多其他认知过程。但是如果你不能学习,不能持续学习,你的思考也会是有限的。回到个人的优势和特性来说,如果你不充满好奇心,你也不会学习。

InfoQ:测试人员可以获得什么?

Charles:实践。培养好奇心。与其他任何技能一样,你的想法越多,你在不同领域和环境中想得越多、学得越多,你的思考和学习能力就越强。

想一下你工作的环境,想一想在你不喜欢的环境中工作的情况。如果你只在敏捷团队中工作,尝试一下在所谓的“瀑布”项目中的工作情况,反之亦然。

同样,和拥有与你不同专业观点和意见的人合作完成测试和软件开发。你可以从“另一方面”学到很多有用的东西,在你不熟悉的环境中实施你自己的实践。

最后,通过思考并理解复杂的系统和领域,提高处理复杂性问题的能力。

InfoQ:测试人员的未来将如何?

Charles:我不是先知,所以每次问我这个问题我的答案都是一样的。未来会发生一些不可知的社会、经济和技术变革,作为测试人员我们要付出自己的技能和个人优势。

我们只能决定我们要提供什么,所以我觉得这就是我们要努力的地方。测试人员需要灵活性强、适应性强,总是学习新的技能和方法,并愿意承担新的角色和活动。

没什么新的补充了!

InfoQ 以问答、总结和文章的形式报道了 2017 年欧洲测试大会。早先,InfoQ 发表了与 Adrian Bolboacă的问答,讨论如何写好单元测试的问题。

查看英文原文 Testing Challenges and Essential Skills for Testers

2017-02-07 18:002566
用户头像

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

关注

评论

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

架构师0期Week13作业

Nan Jiang

35岁以上的程序员们,后来都干什么去了?

华为云开发者联盟

程序员 职业规划 架构师

大数据

yuanhang

Centos 7 虚拟机

Redis单线程为什么能做到高性能和io多路复用它是个什么鬼

Java架构师迁哥

LeetCode题解:225. 用队列实现栈,一个队列, 压入 - O(n), 弹出 - O(1),JavaScript,详细注释

Lee Chen

大前端 LeetCode

从零开始搭建完整的电影全栈系统(二)——简单的WEB展示网站的搭建

刘强西

Yii2 yii

【DevCloud · 敏捷智库】暴走在发布前夜的开发,你怕不怕?

华为云开发者联盟

版本控制 系统集成 发布

Fettley全球共识共享智能合约资产计划 掀起行业追捧热潮

InfoQ_967a83c6d0d7

大专生拿到阿里offer,却担心背调不过,网友:985在你面前黯淡无光

程序员生活志

面试 职场 阿里

字节小组长无意中得知整个部门的薪资,自己28K,手下却有35K,怎么办?

程序员生活志

字节跳动 职场 薪资

架构师0期Week13总结

Nan Jiang

防止APP窃取用户隐私问题,OPPO安全在行动

OPPO安全

App 安全 隐私保护 数据隐私 sdk

如何在一台电脑上管理多Github账号

Matrix Chan

git GitHub 版本管理工具 开发日志

anyRTC小程序SDK 4.0上线

anyRTC开发者

小程序 WebRTC 语音 直播 RTC

架构师训练营第十三周作业

Hanson

限量版Netty纯手打笔记,年薪80W架构师耗时1个月整理出

Java架构师迁哥

从零开始搭建完整的电影全栈系统(一)——数据库设计及爬虫编写

刘强西

爬虫 Scrapy

anyRTC - 模仿微信音视频通话功能

anyRTC开发者

WebRTC 语音 直播 RTC 安卓

Linux 基础操作

yuanhang

linux命令

java安全编码指南之:表达式规则

简爱W

Java java架构师

到底什么是分布式系统?你需要了解这些

华为云开发者联盟

分布式 部署

抗疫代码入国家博物馆, 程序员的巅峰时刻!

程序员生活志

程序员

如何在企业微信上搭建一款活动报名 App

Ceelog

企业微信 Go 语言

Securecrt 使用

yuanhang

securecrt

​程序员离职后收到原公司 2400 元,被告违反竞业协议赔 18 万

程序员生活志

程序员 职场

架构师训练营第十三周总结

Hanson

干货来袭!20例JavaWeb项目开发精粹;(内含源码)

Java架构师迁哥

架构师13周练习

小蚂蚁

克隆虚拟机

yuanhang

物联网为什么需要5G?

华为云开发者联盟

5G 物联网

超级TV盒子,超清秒播,解锁全网VIP资源!

程序员生活志

资源

测试人员面临的测试挑战和必备技能_软件工程_Ben Linders_InfoQ精选文章