在 2025 收官前,看清 Data + AI 的真实走向,点击查看 BUILD 大会精华版 了解详情
写点什么

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

  • 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:003544
用户头像

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

关注

评论

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

48天打造你的专属 Twilio——浅谈运营商通信中台

网易云信

通信

大数据培训Hive如何控制map个数与性能调优参数

@零度

hive map 大数据开发

如何优雅的记录操作日志

flyhero

Java Spring Boot 后端 造轮子 4月月更

看板的作用是什么?任务看板如何跟进

阿里云云效

云计算 阿里云 持续交付 看板 项目协作

一张长图带你看懂物联网产业十数载“江湖风云”!

亚马逊云科技 (Amazon Web Services)

物联网

java培训SpringBoot自动装配原理

@零度

JAVA开发 springboot

进阶篇|有了这招,用文本编辑器搞前端代码都能保证格式统一

Jianmu

运维 前端 自动化 工作流 格式化

去中心化的 React Native 架构探索

Shopee技术团队

前端 去中心化 React Native

【高并发】一文秒懂Happens-Before原则

冰河

并发编程 多线程 协程 异步编程 精通高并发系列

问题来了!拔掉网线几秒,再插回去,原本的 TCP 连接还存在吗?

Java全栈架构师

程序员 架构 面试 计算机网络 底层知识

基于Flink-CDC数据同步方案

领创集团Advance Intelligence Group

算法 java

用uniapp写一个内外循环的全选与反选,不会的赶紧围观

CRMEB

记一次CPU持续增长的问题解决

BUG侦探

Python py-spy CPU增长问题

恒源云(Gpushare)_自动化训练小技巧白送给你,不要吗?

恒源云

OSS SSH hy-tmp

腾讯二面:Linux操作系统里一个进程最多可以创建多少个线程?

Java全栈架构师

Linux 程序员 架构 面试 操作系统

web前端培训nginx配置规则

@零度

nginx 前端开发

踩了个DNS解析的坑,但我还是没想通

捉虫大师

DNS 问题排查 4月月更

亚马逊云科技 loT 百亿连接力量

亚马逊云科技 (Amazon Web Services)

亚马逊云

OpenHarmony 3.1 Beta版本关键特性解析——OpenHarmony图形框架

OpenHarmony开发者

OpenHarmony 动画效果

Sitemap的重要性

源字节1号

软件开发 网站优化

虎符即将引入稳定币USN 并开启USN专场活动

区块链前沿News

虎符交易所 稳定币

Android技术分享| Android 中部分内存泄漏示例及解决方案

anyRTC开发者

音视频 内存 内存泄漏 移动开发 Andriod

解析分布式系统的缓存设计

vivo互联网技术

分布式 服务器 缓存服务

云智慧10年资深架构师带你了解:普通程序员向架构师成长必经之路

云智慧AIOps社区

程序人生 架构师 Meetup 晋升 成长计划

从趋势到必选项,探讨企业数字化转型方式方法

华为云开发者联盟

数据 数字化 企业数字化转型 业务数字化

初创企业需要CRM系统的原因

低代码小观

初创公司 企业管理系统 CRM系统 客户关系管理系统 初创型企业

Thinkphp6实现定时任务功能详解教程

CRMEB

企业如何搭建一个有效的知识管理系统

小炮

企业知识管理 企业知识管理工具

省掉80%配置时间,这款Mock神器免费又好用

Liam

前端 前端开发 Postman 前端教程 web前端开发

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