阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

2020 年软件测试状态报告

  • 2020-05-19
  • 本文字数:3414 字

    阅读完需:约 11 分钟

2020年软件测试状态报告

本文要点:


  • 测试人员都在将他们的工作触角伸向与传统 QA 团队职责无关的领域;

  • 我们看到越来越多的非测试人员参与到测试活动中;

  • CI/CD 之类的开发部署方法给测试人员带来了挑战,让他们更多地参与到应用程序安全性的其他方面;

  • 测试人员仍然觉得自己的价值没有得到企业足够的认可;

  • 测试人员更多地被认为是软件质量的倡导者和顾问,他们以测试教育传播为武器,促进高质量软件产品的交付。


2020年软件测试状态报告”在测试技术、测试实践、测试自动化的采用以及测试人员所面临的挑战方面提供了见解。报告内容为PractiTest网站的 Joel Montvelisky 和“Tea-Time with Testers”杂志的 Lalit Bhamare 共同发起的 2020 年测试调查的结果。


以下内容来自“2020 年软件测试状态报告”:


我们很难确切地说我们从报告中“看到”了什么,或许可以用一种“感觉”来形容,一种变化的感觉,甚至可以说是一种进化的感觉。

我们看到了很多测试人员和开发人员之间增强协作的迹象,团队之间的界限随着时间的推移变得越来越模糊。

我们还看到测试人员的职责范围在扩展,团队在不同领域需要完成的任务和需要解决的挑战也在扩展。

我们也看到了一些被测试的技术、用于测试的技术以及未来可能会发展起来的技术,它们的底层在发生变化。

更重要的是,我们看到了测试人员对测试职业的未来有了更广阔和更光明的愿景。


InfoQ 采访了此次调查的两位组织者。


InfoQ:与之前的报告相比,2020 年测试状态报告有哪些主要变化?


Lalit Bhamare:我们参考了前几年的调查结果,仔细观察正在发生的事情,修改了调查问题,以便能够获关于某些趋势更详细、更有用的信息。

除了这些以外,我们并没有做出什么重大的改变。

Joel Montvelisky:我们尝试让报告的内容更加重点突出一些。这个看起来很简单,难就难在应该怎样把过去问过的一些问题去掉,这样我们就可以加入其他更有价值的问题。

例如,为了了解测试团队对 CI/CD 过程的参与度,我们必须从之前的调查中去掉两个问题。


InfoQ:只从事测试工作的测试人员的百分比在下降,你能详细地说明为什么会这样吗?


Montvelisky:这个现象很有意思,也很鼓舞人心。测试人员在扩大他们的工作职责和活动范围,并参与到流程的其他方面。

对于其中的一些测试人员,他们需要指导开发人员进行自测,还有一些人需要在生产环境中进行质量监控,并定义流程,确保质量保证成为整个团队工作的一部分,而不仅仅是在版本发布之前发现漏洞和给漏洞打补丁。

Bhamare:我完全同意 Joel 的看法。测试人员的角色似乎正在发生变化,他们所做的事情超出了传统的范围。很显然,测试人员更多的是通过提供咨询的方式来推进“全团队测试”,或者将他们的测试技能和专业知识应用到软件交付和软件支持的其他领域。


InfoQ:人们使用什么方法来增强测试专业知识和提高测试技能?


Bhamare:测试人员似乎在寻求基于技能和经验的学习方法,他们与团队成员结对,与其他测试人员讨论,利用在线学习方式,参与社区论坛。

使用会议、网络研讨会和其他在线学习方式的人数明显在增加。

Montvelisky:事实上,测试人员更多的是在进行相互指导或提供网络课程,我认为这些趋势都是相互关联的。在很多情况下,经验丰富的测试人员提供有限的在线培训,然后根据兴趣继续提供一对一指导。


InfoQ:你认为团队测试人员的数量在趋势方面有什么变化?


Montvelisky:这方面的趋势不是很明显,我们也说不清楚。数字正在变小,但去年我们却看到了一个小跳跃。

这可能是因为调查采样导致的一次性跳跃,或者开发团队的“钟摆”行为导致的,他们认为他们需要足够多的测试人员来帮助团队交付高质量的产品。

我们需要在未来几年继续关注这个问题。

Bhamare:我同意 Joel 的看法。我觉得这个要视情况而定。在某些情况下,测试人员被合并到开发团队中,而在某些情况下,会招募更多的测试人员来支持测试工作。


InfoQ:采用持续集成和持续部署对测试有什么影响?


Bhamare:在我看来,CI/CD 可以确保测试人员(或团队中负责测试的人)在测试过程中有可靠和最佳的自动化手段,这样他们就可以省出更多时间用于发现未知的风险。他们可以在 SDLC 中尽早发现这些风险。

测试人员可以批判性地思考最适合自己的自动化策略,并使其更加可靠、更有意义。另一方面,如果他们的自动化策略不够好(或者说他们的 CI/CD 基础设施不成熟),那么测试人员需要花更多时间进行自动化,而这么做也只能让管道保持“绿色”。这些努力几乎不会给产品质量带来什么好处,也没有增加任何有意义的价值。

Montvelisky:在我看来,CI/CD 有助于我们完善质量保证过程。最直接的因素是将单元测试和产品集成活动作为测试和质量过程的一部分——让测试人员参与到整个活动的定义和分析过程中,这是我们的团队目前还无法做到的。

从长远来看,特别是在那些使用持续部署的企业内部,这是在将测试团队作为 DevOps 的一部分,这样一来,生产环境的部署和监控也有了“耳目”。


InfoQ:测试人员在使用哪些测试技术和方法?


Montvelisky:报告显示,测试人员继续使用混合性技术来完成他们的工作。大多数测试人员结合使用探索性(Exploratory)测试和脚本化测试。

我们还看到了一些常用的方法,比如结对测试(Pair Testing)、Bug 追查(Bug Hunts)和生产日志检查(Review of Production Logs)。

他们还使用了各种不同的方法。有很多测试人员有意识地指导团队,并实现了 MT(现代测试,Alan Page 和 Brent Jensen 在“现代测试方法和原则”中定义的测试方法)。

Bhamare:与我们从之前的报告中了解到的情况相比,我没有看到任何重大变化。不过,探索性测试和基于会话的测试继续被越来越多的人所接受。

Bug 追查和生产监控似乎获得了更多的关注。

大多数人采用远程工作方式将给我们所使用的技术和方法带来怎样的影响?看着这种变化的发生,本身就是一件很有趣的事情。


InfoQ:测试人员和测试团队面临的最大挑战是什么?他们是如何应对的?


Bhamare:与时间赛跑以及不尽早参与整个过程仍然是最大的挑战。当然,创建和维护测试数据和测试环境也极具挑战性。

总的来说,把时间和精力花在如何简化测试上是一个最大的痛点,除此之外还有其他传统问题(比如政治问题),而并不是测试人员没有充分重视测试,等等。

Montvelisky:对于我们中的大多数人来说,最具挑战性的仍然是时间、早期参与和传达测试所能产生的价值。

不过,也有很多测试人员需要面对来自其他方面的挑战,如协调外包、政治问题以及将时间“浪费”在一些与测试本身不相干的任务上,比如给其他团队培训产品特性、为开发团队搭建环境或评估来自开发部门之外的潜在问题。


InfoQ:在测试领域,什么样的实践或技术将会变得越来越重要?


Montvelisky:我的答案很清楚:数据分析。在生产系统中,数据的模式会更加捉摸不透,我们更多的是进行数据分析,而不是数据发现,我们需要成为数据分析方面的专家,这样才能基于大量从系统中流出的数据快速做出决策。

Bhamare:从报告和个人经验来看,应该是数据科学和分析测试。当然也包括 AI、ML 和 VR,但在我看来,数据科学肯定会改变游戏的规则。


InfoQ:为了更好地完成工作,测试人员希望哪些方面会发生变化?


Bhamare:作为被合并到开发团队中的测试人员,他们的工作似乎超负荷了。他们希望得到更多的测试支持,或者整个团队都支持质量保证工作,也就是所谓的“全团队”质量保证方法。

Montvelisky:在这方面,我并没有看到与以前有太多的不一样。我们仍然希望自己的工作价值得到认可,进行更多的团队合作,特别是希望开发人员在测试过程中更多地参与进来。

采访嘉宾简介

Lalitkumar Bhamare 目前在 XING SE 担任高级软件测试工程师。他是软件测试杂志“Tea-Time with Testers”的主编和联合创始人。他也是“测试状态报告”项目的联合组织者。Bhamare 熟悉探索性测试,是 RST 和 CDT 的实践者。他是美国软件测试协会 BSST 基础课程的首席讲师,并定期在 James Bach 的在线课程中提供协作。可以通过 @Lalitbhamare 或 @TtimewidTesters 联系 Bhamare,或者访问他的个人博客(http://www.talesoftesting.com/)。


Joel Montvelisky 是 PractiTest 的联合创始人和首席解决方案架构师。自 1997 年以来,他一直从事测试和 QA 工作,为以色列、美国和欧盟的公司工作。他是一名国际演说家,并在“QA情报”博客上发表文章。Montvelisky 也是OnlineTestConf的创始人和主席,“测试状态调查和报告”的联合组织者。他的最新项目是与 Rob Lambert 合作的“测试一对一”播客。


原文链接


2020 State of Testing Report


2020-05-19 09:003663

评论

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

微博评论缓存架构设计

俞嘉彬

架构实战营

模块5 学习总结

TH

架构实战营

作业

CR

架构训练营模块五作业

Geek_e0c25c

架构训练营 架构实战营

架构模块5作业

高亮

架构训练营

模块5作业 微博评论高性能高可用计算架构

TH

架构实战营

模块五-微博评论高性能高可用计算架构

华仔架构训练营

JVM之内存管理

邱学喆

JVM 内存管理 垃圾回收算法 垃圾回收器

spring-beans 注册Beans(一) 之问题场景复现

梦倚栏杆

git stash误使用drop删掉本地保存,恢复代码一次记录

良知犹存

git

架构实战营模块五作业

冷大大

作业 架构实战营 模块五

架构实战营5 作业

梦寻解语花

架构实战营

kubelet之volume manager源码分析

良凯尔

Kubernetes 源码分析 kubelet Ceph CSI

go训练营第二周作业

spring-beans 注册 Beans(二) springboot启动流程

梦倚栏杆

【Vue2.x 源码学习】第六篇 - 数据代理的实现

Brave

源码 vue2 6月日更

模块5-”微博评论“的高性能高可用计算架构

小遵

开源的 OpenHarmony 是每个人的 OpenHarmony

开放原子开源基金会

模块5作业

大肚皮狒狒

架构训练营——模块五作业——微博评论

开拓纪

架构训练营 模块五 微博评论

运动居然成了我的奢侈品?

悟空聊架构

程序员 程序人生 运动 6月日更

spring-beans 注册 Beans(三) ConfigurationClassPostProcessor处理BeanDefinition流程

梦倚栏杆

模块五 作业

薛定谔的指南针

架构实战营

架构实战营 模块五课后作业

iProcess

架构实战营

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

贯通

#架构实战营

模块五:课后作业

黄先生

【架构实战营】第 5 模块作业

swordman

架构实战营

新手模拟实现call和apply

前端树洞

大前端 js this JavaScrip

用Docker的方式编译OpenVINO

IT蜗壳-Tango

6月日更

从水晶宫到甲秀楼:在数博会读懂智慧城市的“大工业时代”

脑极体

Proxy 对象简介

编程三昧

JavaScript 大前端 ES6 Proxy

2020年软件测试状态报告_软件工程_Ben Linders_InfoQ精选文章