测试如何构建快速反馈的能力

简介: 测试如何构建快速反馈的能力

640.jpg

在团队活动中,反馈是一项非常重要的活动,只有收到反馈,大家才知道事情做到哪里了,做得怎么样了。在敏捷软件开发的核心价值观中,反馈也是核心之一。


01



反馈指的是:在信息的传播中,接受者对传播者发出信息的反映。反馈得很重要一个属性就是时间滞延。在测试活动中,笔者经常会团队的测试人员一个问题:开发提交了一段代码后,多久能收到质量反馈?是按天?按小时?还是按分钟?再往前一步,产品提供了一个Story,多久能看到功能实现?3天?1周?还是2周?

 

在测试活动中,如何构建快速反馈的能力,让团队感知到质量的现状,是非常重要的。也是测试Leader应该去思考和建设的。笔者总结了4个字:短、快、准、改


02


短,指的是反馈路径要短,在研发的每个环节都可以尝试去做反馈。


一般情况下,研发活动主要包含需求确认、研发过程、测试过程、部署上线几个核心的阶段。当一个需求的价值等到上线后,才得到不好的反馈,修复的成本是非常大的。因为反馈的链路越长,过程的浪费就越多,成本自然就高了(是不是很熟悉,我们经常讲的是缺陷发现得越早,修复成本越低。)。


所以,我们的反馈路径要短。于是测试就开始左移了,从需求侧就开始介入,快速反馈。具体做法可参考之前的文章,这里不展开说。(可参考从测试看需求需求端到端交付管理


03


快:自动化是必须的,可以和流水线结合起来。


就如前文提到的。开发提交一段代码,多久能得到反馈,如果需要1天后才知道,那就太慢了,这样的反馈也是比较浪费的。这时候就需要自动化手段的介入,不管是代码扫描还是自动化测试,又或者是质量门禁,都是快速反馈的体现。


以前开发吐槽的会是编译慢,现在吐槽的是测试慢,这么晚才发现问题。所以需要我们在代码被编译后,快速验证(不论是回归测试,还是新特性验证,不论是代码规范还是接口测试)。如果有问题,可以快速修复,避免流入到测试环境。


提到自动化测试,多提一个点。现在很多测试的小伙伴在做接口自动化的时候,需要自己手动去抓包,了解接口参数,然后再去做自动化。从学习的角度看,这个是没问题的。但是从团队的角度上看,这么做是很浪费时间的,ROI也会很低,因为接口什么时候变成了你都不知道。


自动化的前提是标准化。当自动化需要做很多兼容性来兼顾不标准的东西时,就没有必要自动化了,因为因果关系搞反了。


04


准:不要经常性地误报,增加不必要的成本。


快速反馈是好事,但如果反馈的问题是经常性误报,那还不如不报。这就需要我们更好地去建设我们的自动化机制,不要总是喊“狼来了”。


对于代码扫描,我们要结合团队现状,对部分规范进行取舍,或者对优先级进行重新评估,而不是从网上拿一份通用的规范直接就扫了,对于结果不做分析,可能很多严重的问题当下无法解决,或者因为项目的特性,某些规范并不适用等。要减少这些误报。


而针对自动化测试执行失败,需要做好分析,是什么问题引起的失败,是真的缺陷,还是因为环境问题、数据问题引起的误报?测试脚本的准确性和兼容性,也是非常重要的一项内容。需要测试人员持续去改进。


05


改:持续改进,螺旋上升,而不是停留在发现问题上。


所有的反馈都是为了解决问题,如果反馈的问题得不到解决,那么反馈就会变得毫无意义。要警惕杀虫剂效应,不能让反馈变成形式。当同样的问题多次重复出现时,我们就需要停下来,寻找根因并尝试去解决掉,而不是让问题一直存在,直到大家都麻木了。持续改进,螺旋上升,行动起来。


06


在某些情况下,我们需要跳出测试,从更高的视角来看待反馈。从单纯的测试角度来看,你只是解决了测试这个单点问题。从研发过程来看,你解决的是研发流程问题。从需求交付的角度来看,你解决的可能是公司业务问题。其中的差距,会让你的价值更大化,让你的护城河更加深厚,也就自我成长了。



往期推荐:

我建星球啦,你想加入么

从测试看需求

研发活动的降本与增效

测试报告别踩坑

敏捷测试系列文章合集


相关文章
|
12天前
|
测试技术 开发者 Python
自动化测试之美:从零构建你的软件质量防线
【10月更文挑战第34天】在数字化时代的浪潮中,软件成为我们生活和工作不可或缺的一部分。然而,随着软件复杂性的增加,如何保证其质量和稳定性成为开发者面临的一大挑战。自动化测试,作为现代软件开发过程中的关键实践,不仅提高了测试效率,还确保了软件产品的质量。本文将深入浅出地介绍自动化测试的概念、重要性以及实施步骤,带领读者从零基础开始,一步步构建起属于自己的软件质量防线。通过具体实例,我们将探索如何有效地设计和执行自动化测试脚本,最终实现软件开发流程的优化和产品质量的提升。无论你是软件开发新手,还是希望提高项目质量的资深开发者,这篇文章都将为你提供宝贵的指导和启示。
|
1月前
|
缓存 Devops jenkins
专家视角:构建可维护的测试架构与持续集成
【10月更文挑战第14天】在现代软件开发过程中,构建一个可维护且易于扩展的测试架构对于确保产品质量至关重要。本文将探讨如何设计这样的测试架构,并将单元测试无缝地融入持续集成(CI)流程之中。我们将讨论最佳实践、自动化测试部署、性能优化技巧以及如何管理和扩展日益增长的测试套件规模。
46 3
|
2月前
|
人工智能 数据可视化 API
10 分钟构建 AI 客服并应用到网站、钉钉或微信中测试评
10 分钟构建 AI 客服并应用到网站、钉钉或微信中测试评
103 2
|
14天前
|
监控 安全 测试技术
构建高效的精准测试平台:设计与实现指南
在软件开发过程中,精准测试是确保产品质量和性能的关键环节。一个精准的测试平台能够自动化测试流程,提高测试效率,缩短测试周期,并提供准确的测试结果。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
61 1
|
5月前
|
JavaScript 前端开发 安全
在众多的测试工具中,Cypress以其强大的端到端测试能力和与TypeScript的完美结合,成为了前端开发者的首选
【6月更文挑战第11天】Cypress结合TypeScript,打造前端测试新体验。TypeScript增强代码可读性和稳定性,Cypress提供强大端到端测试,二者结合提升测试准确性和可靠性。通过类型定义、自定义命令和断言,优化测试代码;Cypress模拟真实用户操作、时间旅行功能及内置调试工具,确保应用功能性能。推荐前端开发者使用TypeScript+Cypress进行端到端测试。
72 2
|
14天前
|
监控 安全 测试技术
构建高效精准测试平台:设计与实现全攻略
在软件开发过程中,精准测试是确保产品质量的关键环节。一个高效、精准的测试平台能够自动化测试流程,提高测试覆盖率,缩短测试周期。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
38 0
|
1月前
|
SQL 消息中间件 大数据
大数据-159 Apache Kylin 构建Cube 准备和测试数据(一)
大数据-159 Apache Kylin 构建Cube 准备和测试数据(一)
51 1
|
1月前
|
SQL 大数据 Apache
大数据-159 Apache Kylin 构建Cube 准备和测试数据(二)
大数据-159 Apache Kylin 构建Cube 准备和测试数据(二)
78 1
|
3月前
|
测试技术 API 开发者
Python 魔法:打造你的第一个天气查询小工具自动化测试框架的构建与实践
【8月更文挑战第31天】在这篇文章中,我们将一起踏上编程的奇妙旅程。想象一下,只需几行代码,就能让计算机告诉你明天是否要带伞。是的,你没有听错,我们将用Python这把钥匙,解锁天气预报的秘密。不论你是编程新手还是想拓展技能的老手,这篇文章都会为你带来新的视角和灵感。所以,拿起你的键盘,让我们一起创造属于自己的天气小工具吧!
|
3月前
|
测试技术 虚拟化 iOS开发
iOS自动化测试方案(二):Xcode开发者工具构建WDA应用到iphone
这篇文章是iOS自动化测试方案的第二部分,详细介绍了在Xcode开发者工具中构建WebDriverAgent(WDA)应用到iPhone的全过程,包括环境准备、解决构建过程中可能遇到的错误,以及最终成功安装WDA到设备的方法。
185 0
iOS自动化测试方案(二):Xcode开发者工具构建WDA应用到iphone