HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

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:003819

评论

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

LeetCode第二题,裂开了..

为自己带盐

LeetCode 7月月更

密码密钥硬编码检查

Tom(⊙o⊙)

密码 软件安全 信息泄露 静态代码检查 密钥管理

jQuery

Jason199

jquery js 7月月更

【萌新解题】两数之和

面试官问

LeetCode 哈希表 两数之和

记一次uniapp的经历

是乃德也是Ned

uni-app 7月月更

《高绩效教练》:如何用提问激发潜能?

郭明

读书笔记

新星计划Day5【数据结构与算法】 链表

京与旧铺

7月月更

3000字11张图硬核科普:什么是边缘计算?与云计算有什么联系和区别?

wljslmz

云计算 边缘计算 7月月更

shell脚本定时备份mysql数据库

乌龟哥哥

7月月更

iOS 中的 Protocol

NewBoy

ios 前端 移动端 iOS 知识体系 7月月更

重温算法之颜色分类

自由

算法刷题 7月月更

小程序容器对工业互联网平台建设的加速的体现

Geek_99967b

小程序

读书笔记之数据密集型应用的可靠性

宇宙之一粟

读书笔记 7月月更

Qt中 connect的多种方式

小肉球

qt 7月月更

Ark UI 中的问题汇总【系列 2】

坚果

HarmonyOS OpenHarmony Open Harmony 7月月更

Ceph分布式存储初步认识(一)

Lansonli

私有云 Ceph 云存储 7月月更

浅入浅出Mybatis(二)

ES_her0

7月月更

【Docker 那些事儿】关于Namespace隔离机制的奥秘

Albert Edison

Docker Kubernetes 容器 云原生 7月月更

分布式——Maven多模块管理

Java学术趴

7月月更

解读《深入理解计算机系统(CSAPP)》第8章异常控制流

小明Java问道之路

操作系统 异常 csapp 异常机制 7月月更

接口测试进阶接口脚本使用—apipost(预/后执行脚本)

Xd

接口测试

zookeeper-认识zookeeper

zarmnosaj

7月月更

斐波拉契数最小步数与合法括号序列判断

未见花闻

7月月更

企业级容器安全风险与最佳实践

明亮安全观

网络安全 安全架构 容器安全

自定义spring boot starter三部曲之一:准备工作

程序员欣宸

spring springboot 7月月更

深入浅出 eBPF|你要了解的 7 个核心问题

阿里巴巴云原生

阿里云 云原生 k8s ebpf

redis安装

想要飞的猪

到底应不应该使用 lombok

HoneyMoose

查找——顺序表的查找和有序表的查找

乔乔

7月月更

OAI L3与L2接口分析

柒号华仔

5G 7月月更

飙车资深老教练-手撸一个EventBus

芝麻粒儿

android EventBus 7月月更

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