当测试发现300个缺陷时

简介: 当测试发现300个缺陷时

如果你底下的测试人员跟你反馈,这个迭代一共产生了300多个缺陷(团队不大,十来个开发),作为测试负责人,你的想法是什么?之前在团队中其实也遇到过类似的问题,当迭代交付质量较差时,测试该如何应对?本文聊聊自己的一些想法。

01

在听到这个反馈的第一时间,我做思考以下几个问题:


还有多少缺陷被遗漏?

当测试人员发现了这么多问题后,是否还隐藏着更多的未知问题?当测试人员疲于提交大量的缺陷时,测试执行的有效性是否降低了?还有哪些风险项存在?

 

修复这么多缺陷的成本是多少?

由于产生了这么多问题,那么研发修复的成本是多少?需要多少时间才能完全修复,在这个修复的过程中,是否会引入更多的缺陷?这个应该是必然的,否则第一轮为什么发现这么多缺陷。风险进一步升级。

 

交付质量为什么这么差?

为什么会在测试环节出才发现这么多问题?在提测之前,团队为质量保障都做了哪些事?是否执行到位了。

 

带着这么多疑问,我会让测试人员针对已发现的缺陷做一次分析,简单归类,看看哪些类似的缺陷占比高。

02

进一步思考,还有很多事需要进一步澄清:


摒弃幸灾乐祸的想法

测试人员不应该为这件事感到兴奋,认为发现这么多缺陷是件多么值得高兴的事,因为这意味着最终的交付质量肯定不容乐观,用户不满意,伤害的将是整个团队,不应该隔岸观火,也不应该随意吐槽研发的能力,这是整个团队的事。

 

是否存在过渡测试的情况

产品处在不同的阶段,面对不同的用户群体,对质量的要求是不一样的。测试人员在制定测试策略时,是否产生了偏差,虽然说对质量的高要求不能算错,但也要注意的成本的问题。之前遇到过一个面对研发人员使用的架构底座产品,有测试人员针对页面样式提出了近50+的问题。还有关性能测试的指标,明明只有10W多的用户,却要求有1W的并发量;这类的场景,明显就属于测试过度的情况。

 

审视整个研发过程

多数情况下,当测试发现了这么大量的缺陷,本质上是整个研发过程出了问题,需要从更高的维度去审视全链路的研发过程,拉上产品和研发负责人,一起来查找问题的根源:

  • 需求是足够清晰,数量是否过多?
  • 研发的产能是否过于超负荷?还是人员配置有问题,能力有问题?
  • 测试左移是否实施到位,比如尽早提供冒烟测试用例,研发是否执行到位;
  • 过程中是否存在许多无关的干扰项?比如环境问题,上下游依赖问题,数据问题等等;

 

下个迭代,测试可以为此做些什么

测试左移可能是解决这类问题的一个有效方案,拉着研发一起明确需求,做AC确认。在研发过程中,尽早提供冒烟测试用例,指导研发进行自测。通过自动化的手段,结合到CICD的流程中去,尽快发现问题,等等。总之,不能干等着。测试人员需要为质量作出一些改变。

03

进一步延伸,还有些问题值得去思考


如何与领导沟通,协调质量与速度

在排除团队人员素质问题后(能被团队招进来的人,能力上应该没什么问题),本质上还是质量与交付速度的取舍。需要拿着数据去和领导说话,而不是主观感觉。笔者的做法是关注团队的工时评估与最终的交付完成度。比如:团队在迭代初期,预计完成10个Story,但是最终可发布的Story只有8个,那么完成度只有80%。团队的产能就这么大,是想要更多的可交付内容,还是更多的半成品?团队一起来决策。


用户关注的是什么

对这个系统的用户而言,是质量优先,还是交付速度优先?在不同的产品形态下,取舍是不一样的。也取决于线上监控和发布形态,是否可以做到金丝雀发布?控制好问题暴发半径,也可以交付速度优先,让用户更早地体验到新功能。并不是一定需要没有缺陷了,才能交付。

 

质量内建如何有效落地

测试左移、质量内建是敏捷的核心之一,也是高效交付的生命线,没有质量的交付,速度越快,死得也越快。但是文化、思维的改变又不是一朝一夕的事,多数人都不太愿意走出自己的舒适区。这件事需要时间的积累、技术的改进、文化的沉淀。之前也讨论过好多次了,不再展开。

 

完成承诺是一种团队氛围

我们应该让团队形成一种按时保量交付的习惯,这也是质量内建的一部分。当大家都专注于完成迭代内的任务时,质量也会随之慢慢提升。每个迭代都按时完成了,团队的交付信心也会提升,对于自己的承诺,如果能够完全实现,对团队的信息是个极大的提升。反之,如果每个迭代都有未完成的Story,大家就会慢慢习惯Story的不完成,那么不完成的Story就会越来越多,破窗效应无限被放大,进而伤害到团队。


共勉


相关文章
|
2月前
|
机器学习/深度学习 测试技术
ACL杰出论文奖:GPT-4V暴露致命缺陷?JHU等发布首个多模态ToM 测试集,全面提升大模型心智能力
【10月更文挑战第6天】约翰斯·霍普金斯大学等机构提出了一项荣获ACL杰出论文奖的研究,旨在解决大模型在心智理论(ToM)上的不足。他们发布了首个MMToM-QA多模态ToM测试集,并提出BIP-ALM方法,从多模态数据中提取统一表示,结合语言模型进行贝叶斯逆规划,显著提升了模型的ToM能力。这一成果为机器与人类自然交互提供了新思路,尽管仍面临一些局限性和技术挑战。论文详情见:https://arxiv.org/abs/2401.08743。
48 6
|
3月前
|
机器学习/深度学习 人工智能 安全
软件测试中的探索性测试:一种高效发现软件缺陷的方法
本文将深入探讨软件测试中的一种关键方法——探索性测试。探索性测试是一种动态的、探索性的软件测试方法,它依赖于测试人员的直觉和经验,通过实际操作软件来发现潜在的问题和缺陷。与传统的基于预定义用例的测试方法相比,探索性测试更加灵活,能够更全面地覆盖软件的各个方面,从而更有效地发现难以预见的错误和漏洞。
36 2
|
7月前
|
机器学习/深度学习 数据采集 人工智能
【专栏】AI在软件测试中的应用,如自动执行测试用例、识别缺陷和优化测试设计
【4月更文挑战第27天】本文探讨了AI在软件测试中的应用,如自动执行测试用例、识别缺陷和优化测试设计。AI辅助工具利用机器学习、自然语言处理和图像识别提高效率,但面临数据质量、模型解释性、维护更新及安全性挑战。未来,AI将更注重用户体验,提升透明度,并在保护隐私的同时,通过联邦学习等技术共享知识。AI在软件测试领域的前景广阔,但需解决现有挑战。
969 6
|
4月前
|
监控 测试技术
软件测试中的风险管理:如何避免潜在缺陷
【8月更文挑战第5天】在软件开发的生命周期中,测试阶段扮演着至关重要的角色。本文将深入探讨软件测试中的风险管理,包括风险识别、评估和缓解策略。我们将通过具体案例分析,揭示如何在早期阶段预防和减少潜在的软件缺陷,以及如何通过有效的测试计划和执行来保障产品质量。文章旨在为读者提供一套系统的风险管理框架,帮助他们在软件开发过程中识别和应对各种测试风险。
183 3
|
7月前
|
前端开发 测试技术 数据安全/隐私保护
软件测试 —— 案例系统缺陷报告
软件测试 —— 案例系统缺陷报告
|
7月前
|
缓存 C语言 C++
【项目日记(九)】项目整体测试,优化以及缺陷分析
【项目日记(九)】项目整体测试,优化以及缺陷分析
|
7月前
|
测试技术
有了测试标准流程后缺陷就不会遗漏到线上吗?
有了测试标准流程后缺陷就不会遗漏到线上吗?
|
7月前
|
测试技术
『测试基础』| 如何理解测试用例管理和缺陷管理?
『测试基础』| 如何理解测试用例管理和缺陷管理?
216 1
|
监控 测试技术
测试思想-流程规范 软件测试缺陷管理流程
测试思想-流程规范 软件测试缺陷管理流程
178 0
|
测试技术 BI
测试思想-测试总结 缺陷分析与统计浅析
测试思想-测试总结 缺陷分析与统计浅析
150 0