软件测试完后,运行后还有BUG,测试人员就应该背锅吗?

news2024/11/19 20:40:58

测试完成后还有bug,测试人员肯定是有责任的,第一时间要赶紧处理而不是着急甩锅。但是这口锅全部扣测试身上,明显也是不能接受的,关键在于测试人员需要找出足够的证据来保护自己。

或许很多人会说测试不可能发现所有的bug,但是这句话在公司老板听来不过借口而已。软件质量由研发团队共同保证,测试人员是研发团队的一份子,而且还是专门负责质量的,你说bug跟你没有关系,怎么也说不过去。

所以出现bug后,不要直接甩锅,这样让人感觉在逃避问题。第一要紧事情是处理bug,尽量减少对用户的影响;只要用户影响不大,即便有责任后果也不会太严重。

那么是不是这口锅就会全部扣测试身上呢,这样明显也是不能接受的,测试人员需要找出足够的证据来保护自己。所以第二,我们一定要对测试后出现的bug进行分析并回溯:

(1) 通过回溯确定问题的产生原因,问题的责任认定基本就清楚了

问题回溯一般从bug的引入阶段,bug的产生原因,bug的遗漏原因等几个方面去分析。例如:

- Bug如果是需求阶段引入的,需求本身有遗漏/描述不清楚,那么主要是产品人员的责任,但是设计、开发、测试人员没有评审出问题,同样也有责任

- Bug 如果是开发阶段引入的,测试人员设计用例的时候没有考虑到,那么主要是测试人员的责任,但是测试用例同样是要经过开发、产品的评审才会使用的

- bug同样是开发阶段引入的,如果bug是由于开发修改bug的时候引入了新的bug,恰好那个用例之前测试过,不会再重新测试了,这样的遗漏主要责任就在开发,修改bug控制影响范围是开发必须做到的,但是测试人员可以没有做到代码看护的事情

- 再或者产品人员变更需求后,只是告诉开发要改,但是没有同步给测试,造成测试漏测,这就是项目研发流程有问题了,项目经理要负主要责任。

通过上面几个例子可以看出,bug的产生有很多种可能的原因,一般情况下,在项目组中不会刻意的强调谁要负主要责任。为了团队的团结,大部分情况下都是产品、开发、测试共同承担责任。

(2) 回溯并不是为了推脱责任,根据问题原因提出改进措施才是最终目的。

其实出现问题并不可怕,吃一堑,长一智才最重要。针对上面分析的那些问题的原因,需要制定出对应的改进措施,建立可以量化的改进任务,并指定特定的负责人来跟进,避免类似的问题再次发生。

为了减少测试人员背锅的可能,最后提几点小建议:

(1) 做好充分的测试计划

按照正常的测试流程(测试方案、测试用例、测试执行、缺陷回归)来评估测试需要的时间,有时还要预留一些冗余的时间,以处理突发情况,在项目排期时要尽可能的争取足够的测试时间,这样才能保证在测试过程中能够有条不紊的进行。

(2) 测试过程中的所有工作必须有数据记录,不能口头传达。

很大测试人员怕麻烦,或者自认为跟产品开发关系好,一些bug通过口头和开发人员说一下,但不提交缺陷报告;或者bug回归不通过怕面子过不去,不给打回;开发人员说这不是bug/不重要/不同修改,然后bug就不提了,等等。这些行为平时看起来无所谓,还省时间,但是到了出问题的时候,就是自己埋下的祸根,到时线上出问题了,你说当时测试过,但是谁谁说不用改,口说无凭!

(3) 测试结束后的总结需要认真编写

正常来说,测试结束后测试人员对于软件质量一定有自己的判断,是否达到质量要求,是否发布上线,哪些地方由于环境、数据等各种原因没有验证充分,还存在风险等等,都需要明确的写出来。例如:在测试过程中出现特殊情况,如开发的版本转测试时间延迟,需求变更等,导致时间不够测试不充分,你可以在测试报告中建议延期发布。如果项目组要求必须发布,那你就在测试报告中写明这些问题,导致测试不充分,哪些地方会有风险。(这些理由如果在测试报告中不写,在问题发生后你再来提,就是“事后诸葛亮”,别人会认为你只是在找借口)

(4) 提升自己的技术能力

提升自己的业务分析能力和用例设计水平,让自己写的测试用例能否尽可能的把需求覆盖全面一些,各种正常异常的情况考虑齐全,就不容易出现漏测;再者,提升各种代码和自动化工具的能力,编写一些自动化的看护脚本,这样即便出现开发修改代码改出新问题,也能够及时发现,提高产品的质量。

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取  

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/568981.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

软件测试人的第一个实战项目:web端(视频教程+文档+用例库)

最近很多自学测试的小伙伴在问我,学完基础的知识后面临着项目问题,网上项目大都不全,而且也不知道该怎么做,不知道做哪些项目能帮助自己提升 今天给大家分享一个web软件测试实战项目,该项目对新手十分友好,…

STM32入门100步(第4步~第5步)

第4~5步 STM32内部核心功能 前两节中,我们了解了什么是ARM、什么是STM32系列,接下来就是了解具体的一款STM32单片机的内部功能。单片机就是一种微小型计算机,其核心原理就是计算机原理。对于其他非ARM构架的单片机来说学习过程也是相似的。 我们学习的是STM32F103C8T6这款单…

细说前端打包发布后,浏览器缓存如何清理?其实只需要简单的webpack配置就行

前言 有没有这么一种场景,项目上线后,客户使用过程中发现了bug,你急急忙忙改完,发布。但你发布后 测试人员或者客户会说:“你这改了没用啊”。 你:“清下缓存试试” 客户:“?&am…

c#——WCF和HTTP文件传输实验

(1)掌握HTTP协议下WCF服务应用程序构建方法。 (2)掌握WCF客户端和服务端的消息交换模式。 (3)掌握协定的设计及实现方法。 (4)熟悉WCF和HTTP的相关绑定设置。 (5&#xf…

CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)

文章目录 1、CentOS安装OpenSSL1.1.1(前置环境)2、CentOS安装 Python 3.103、创建虚拟环境4、运行Django项目 1、CentOS安装OpenSSL1.1.1(前置环境) 编译安装Python3.10时需要openssl1.1.1 查看当前版本 & 删除openssl1.0 …

Java高并发核心编程—JUC显示锁原理

注:本笔记是阅读《Java高并发核心编程卷2》整理的笔记! 显示锁 使用Java内置锁时,不需要通过Java代码显式地对同步对象的监视器进行抢占和释放,这些工作由JVM底层完成,而且任何一个Java对象都能作为一个内置锁使用&a…

Apache Kafka - ConsumerInterceptor 实战 (1)

文章目录 概述使用场景实战配置文件配置类自定义ConSumerInterceptor使用 概述 ConsumerInterceptor是Kafka中的一个重要组件,它允许开发人员在Kafka消费者端拦截和修改消息的处理过程。ConsumerInterceptor可以用于实现各种功能,从消息监控到数据转换和…

【Python开发】FastAPI 01:hello world

FastAPI 是一个轻量级的后端框架,对于定制化不高或者功能简单的业务完全可以拿他作为后台。 FastAPI 一个比较重要的特性就是异步,简单来说就是相比 django 和 flask 快,FastAPI 和 flask 的语法类似。本篇文章介绍 FastAPI 运用的简单实例&a…

从索引结点出发探索软、硬链接

索引结点的初步认识 对于整个计算机系统的资源管理,我们可以认为,OS先将这些资源的数据信息,给描述起来构成一个部分,然后再将它们组织起来,就能够实现由OS集中管理。举一个最经典的例子,进程的引入是为了…

Cos上传(腾讯云):图片存储方案

Cos上传(腾讯云) 01.图片存储方案介绍 目标 了解主流的图片存储方案 两种常见方案 方案一:存到自己公司购买的服务器上 优点:好控制 缺点:成本高由于图片都存放到自己的服务器上,占据空间很大 方案二:存到三方…

总结SpringBoot常用读取配置文件的3种方法

文章目录 1、使用 Value 读取配置文件2、 使用 ConfigurationProperties 读取配置文件3、读取配置文件中的List 1、使用 Value 读取配置文件 注:这种方法适用于对象的参数比较少的情况 使用方法: 在类上添加configuration注解,将这个配置对…

Hotbit交易平台停运,百万用户待清退,币圈危机再度蔓延

“币圈”的危机似乎还没有走到尽头。5月22日,加密货币交易平台Hotbit发文宣布,决定从世界标准时间当日4:00停止所有CEX(中心化交易所)操作,希望所有用户在6月21日4:00之前提取剩余资产。据悉,该平台在其任期…

微前端乾坤

1. 乾坤 简介 qiankun 是一个基于 single-spa 的微前端实现库,旨在帮助大家能更简单、无痛的构建一个生产可用微前端架构系统 官网:https://qiankun.umijs.org/zh/guide 2.使用 背景: vue2.0 , vue-cli 5.0 主应用: 安装乾坤…

基于上下文折扣的多模态医学图像分割证据融合

文章目录 Evidence Fusion with Contextual Discounting for Multi-modality Medical Image Segmentation摘要本文方法Evidential SegmentationMulti-modality Evidence FusionDiscounted Dice Loss 实验结果 Evidence Fusion with Contextual Discounting for Multi-modality …

利用PaddleOCR识别增值税发票平台验证码(开箱即用)

前言:全国增值税发票查验平台验证码没什么好说的,根据指定的颜色识别验证码中的文字,图片如下 下面直接讲解利用paddleocr识别的思路,为什么使用paddleocr,因为paddle中集成了较好的ocr文字识别模型,开箱即用即可,废话不多说,剑指主题,识别思路步骤如下 步骤如下 1、…

BI技巧丨度量值的动态格式字符串

2023年4月版本新增了度量值的动态格式字符串功能。从字面上看可能小伙伴们不是很理解这个功能的用途,这里白茶给大家解释一下。 通俗一点来说,就是可以在数值中加入文本,将其转化为字符串,而不改变其原有的数据类型。 看到这里&…

Java调用第三方库JNA(C/C++)

GitHub - java-native-access/jna: Java Native Access 源代码 在Java 中使用C语言库的传统做法是使用JNI编程。但是现在有更好的替代方案,即JNA(Java Native Access);JNA是一个开源的Java框架,是SUN公司推出的调用本地库方法的技术,是建立在…

传染病学模型 | Matlab实现SEIRS传染病学模型 (SEIRS Epidemic Model)

文章目录 效果一览基本描述模型介绍程序设计参考资料效果一览 基本描述 传染病学模型 | Matlab实现SEIRS传染病学模型 (SEIRS Epidemic Model) 模型介绍 SEIRS是一种基于计算机模拟的传染病学模型,用于研究人群中传染病的传播和控制。与其他传染病学模型不同,SEIRS模型考虑了…

第二章.­ Learning to Answer Yes­_No

第二章. Learning to Answer Yes_No 2.1 Perceptron Hypothesis Set 1.机器学习流程图: 在机器学习的整个流程中,模型的选择(Hypothesis Set)是非常重要的,它决定了机器学习的最终效果。 2.常用的机器学习模型——感知机(Percep…

L2-001 紧急救援(dijkstra算法练习)

作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候,你的任务是带领你的…