互联网软件测试百人计划7组专题百人计划

测试人员基本功:缺陷报告

2017-06-26  本文已影响559人  倔强的潇洒小姐

小组讨论 第三次主题:Bug的流程

什么是Bug?

一只虫子爬进主机引起短路的这个事件(不知道的可以咨询百度),让我们知道了软件缺陷被称为“Bug”的原因,而我也一直以为缺陷就是bug。

那缺陷又是什么呢?
还是看上面的这个例子,真正的缺陷是计算机维护工程师提出来的那个问题:在主机的散热孔那里可以加装一层更加细密的金属网,既不影响散热,又可以防止虫子爬到主机里。这是计算机设计人员疏忽的地方,是产品真正的缺陷。而虫子引发的那个故障只是这个缺陷导致的故障的其中一种表现形式。也就是说,Bug是缺陷的一种表现形式,而一个缺陷是可以引起多种Bug的。
所以缺陷和bug是一对多的关系,弄清楚这层关系了接下来我们就来看看缺陷报告。

缺陷报告是测试人员日常工作中的一部分,每天都要进行,有时可能一天要报上三四十个,因此缺陷报告的质量就显得特别重要,直接关系到缺陷修正的速度、开发人员的效率。

缺陷报告的描述

一份有效的缺陷报告要素通常包括:标题、前提、测试环境、操作步骤、实际结果、期望结果、出现的频率、优先级、严重等级、附件(一般是图片形式)。
另外还会有一些附加信息,如测试人员、开发负责人等。

结合我司的报告内容说明下


1.png

一般来说,缺陷越严重,优先级越高,但也有例外:
1)从用户角度看,缺陷不是很严重,但可能影响到测试执行了(优先级高严重等级低)
2) 有些缺陷比较严重,但由于技术的限制,暂时没法修改。这时优先级就降低了

如何有效的报告缺陷?

缺陷的生命周期

状态:Active(激活) ——> Resolved(已修改) ——> Closed(关闭)

软件缺陷生命周期.png

而我们在实际工作中会遇到各种各样的情况,过程有时比较复杂,如:

并不是所有的bug都能被及时修复,所以很多bug会被关闭,一般原因有:

常见Bug类型

代码错误、界面优化、设计缺陷、配置相关、安装部署、安全相关、性能问题、需求问题、测试脚本、其他。

一般以下地方为bug多发区:浏览器兼容性及按钮操作、字符编码、页面跳转、跨域、性能

如何重现在线Bug?

具体可以阅读老徐公众号文章
https://mp.weixin.qq.com/s/GoUXk8gih_M78A3q2EK-OQ

对于线上发现的Bug,如果没有分析流程,测试人员需要制定线上Bug的分析流程,先重点分析这个线上Bug产生的原因、线上Bug的影响范围,然后与PM、RD一起决定可以有哪些改进措施可以避免同类线上Bug再犯。

bug很严重,影响了版本的发布时,测试人员要再次确认用例设计的覆盖度及周密性
对于测试而言,用例设计的覆盖不够,不够严谨就会导致bug
有两种情况:
1)原本用例就没有好好设计过,未经评审过,测试时就很随意
补救措施:赶紧把用例好好琢磨琢磨,再叫上项目相关人员进行评审,这么做的目的也是为了保证测试用例得到了项目相关人员的认可,各种情况大家都讨论过,保证在需求上大家的一致性,保证软件覆盖度能满足本次项目需求的要求,做到需求100%覆盖,开发人员若再提出更多建议,那也可以弥补一些黑盒测试时可能遗漏的情况
2)该项目已经经过严格的需求评审及用例评审了,当然,即便如此也不能避免测试过程中漏测以及对特殊情况的考虑。

当我们绞尽脑汁,bug仍然不能复现时,需保持关注,若通过项目组决定不影响版本发布,那么在发布后验证时也需要重点关注。而且该bug不能关闭,依次往以后版本中顺延,并且每轮测试时都要尝试再次复现。
那何时可以关闭呢?也许3,5个版本发布后,没有出问题就可以决定关闭它了。

缺陷分析

测试完成之后,我们需要对缺陷进行一次分析,可以更好的了解整体的测试效率、RD修复的效率等,图表形式有很多种,如下是我公司目前在用的


bug trends1.png bug trends2.png
上一篇 下一篇

猜你喜欢

热点阅读