最近一个月偷懒了,刚看到一篇博文很不错。最近也是碰到一样的问题,由于我记录bug的描述不够清晰。导致开发看不懂我描述的bug,还有一些配置信息没记录好。出现一问三不知的情况,还被领导训。下面的博文是来自http://blog.csdn.net/xifeijian/article/details/8363570的。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

作为软件测试人员,最基本的一项技能就是如何把所发现的缺陷(Defect)准确无歧义的表达出来,尤其还是全英文表达的时候。

  其实从缺陷的描述也可以看出一个软件测试人员的基本功,甚至可以看出测试人员在做一些自由测试的时候的投入程度。

  本文主要以缺陷出现的频率来说明测试人员在遇到不同频率的缺陷的时候如何做?

  缺陷的频率主要有:Always, Usually(>50%), Sometimes(<50%), Once

  对于所有的缺陷,都需要做到的是:

  1,查看当前测试环境和测试数据,并记录下来。

  2,记录与该缺陷相关的配置等条件

  3,记录出现缺陷时候log信息

  4,描述尽量做到每个步骤最多两个动作,一连串的操作尽量分句说明。

  5,英语表达尽量用主动句型,体现操作性。

  6,缺陷出现时候的现象一定要描述详细,不要和步骤混在一起描述,一个步骤最好对应一个相应的输出结果

  7,缺陷出现之后若可以继续进行操作,也尽量多做几个步骤,这样更容易发现当前缺陷周围的缺陷,8/2原则或许在这里可以起到作用。

  8,尽量把缺陷出现时候的相关功能运行情况也都描述详细

9,对于一些比较难描述清楚、或者不能稳定重现的缺陷,在缺陷中需要添加出错时截图,所谓有图有真相。

10,缺陷描述的终极目的,先抛开缺陷记录的管理意义不说,主要是能让开发人员根据缺陷描述,轻松地重现缺陷

  对于Always和Usually这类容易重现的缺陷,除了以上必须做到的,还需要做到

  1,按照缺陷重现的步骤重复做3次以上,这样可以寻找最短的重现路径,可以做到把不必要的过程过滤。(注意:不确定的步骤一定不能过滤)

  2,同一缺陷现象出现在不同的地方,尽量能够做总结,可以把不同的步骤分别写出。

  3,缺陷描述以及缺陷出现的各种环境等尽量做到简介且全面,不需要总等到开发人员问。

  对于Sometimes的缺陷,理论上来说缺陷都能重现出来,所以我们遇到的sometime只是目前还没有找到必然的那个路径。

  若与开发人员是在一起工作的比较好,遇到这类缺陷的时候,可以和开发人员沟通,简单描述一下,共同推测必然出现的路径。找出更多重现的路径就有可能转为Always或Usually,开发人员解决起来就容易些了。重现不出来,至少也需要把所有遇到缺陷的相关环境都详细描述出来。

  若与开发人员不在一起工作的,那就尽量把缺陷出现时候的各种log信息作为缺陷附件提交。

  对于Once的缺陷:偶尔出现一次的缺陷,就是短时间内测试人员自己没有重现出来的,测试时间有限,考虑成本问题,也不可能允许你一直去分析。

  这样的缺陷,我们测试人员能做到的首先跟开发人员沟通,有时候开发人员看一眼log就知道问题所在甚至推测出必然路径的。否则,我们能做到的就是把上述1-10条把缺陷记录在库,在后续多个版本进行验证(Verify)。

  作为测试人员,遇到缺陷的时候除了把缺陷描述简洁明了之外,我们更需要做到的是:

  1.尽量做到及时和开发人员沟通(尤其对需求不确定的情况)

  2.立刻检查当前状态并做记录(不要间隔时间太长,发现的时候立刻记录,好记忆不如烂笔头)

  3.如果同样的步骤连续发生好几个缺陷,需要把每个缺陷的频率都标注好

  4. 如果有外部网络或者设备等因素的影响,也尽量把外部环境描述清楚(这样有助于开发人员Fix缺陷)

  作为测试人员的我们,目标只有一个——软件产品质量。 我们不但要发现问题还要协助开发人员解决问题

如何有效地描述软件缺陷(Defect)?的更多相关文章

  1. 编程菜鸟的日记-《软件测试》Ron Patton著-读书笔记

    第一部分 软件测试综述 第一章 软件测试的背景 1.软件测试员的目标:尽可能早地找到软件缺陷,并确保其能得以修复. 2.仅仅测试程序是否按预期方式运行有何问题:程序能完好的跑通并不代表软件不存在缺陷, ...

  2. 缺陷=bug?

    Defect(缺陷):是指静态处在于软件工作产品(文档.代码)中的错误,也指软件运行时由于这些错误被激发导致的软件产品与其属性的偏离现象. Bug:Bug通常是软件缺陷(Defect)导致的一些软件故 ...

  3. 2020软件测试工程师面试题汇总(内含答案)-看完BATJ面试官对你竖起大拇指!

    测试技术面试题 1.什么是兼容性测试?兼容性测试侧重哪些方面? 参考答案: 兼容测试主要是检查软件在不同的硬件平台.软件平台上是否可以正常的运行,即是通常说的软件的可移植性. 兼容的类型,如果细分的话 ...

  4. 软件缺陷分析方法:ODC

    资料 Orthogonal Defect Classification:简要描述. ODC-5-2.pdf :详细说明了ODC对于缺陷属性分类的描述,以及具体应该怎么划分. ODC-5-2-Exten ...

  5. 软件测试 → 第二章 基础-> 软件缺陷与缺陷管理

    一.缺陷定义与分类 1.1.软件缺陷 定义:在软件工程整个生命周期中任何背离需求.无法正确完成用户所要求的功能的问题,包括存在于组件.设备.或系统软件中因异常条件不支持而导致系统失败等都属于缺陷. 从 ...

  6. 【软件分析与挖掘】Multiple kernel ensemble learning for software defect prediction

    摘要: 利用软件中的历史缺陷数据来建立分类器,进行软件缺陷的检测. 多核学习(Multiple kernel learning):把历史缺陷数据映射到高维特征空间,使得数据能够更好地表达: 集成学习( ...

  7. Java 如何有效地避免OOM:善于利用软引用和弱引用

    Java 如何有效地避免OOM:善于利用软引用和弱引用 想必很多朋友对OOM(OutOfMemory)这个错误不会陌生,而当遇到这种错误如何有效地解决这个问题呢?今天我们就来说一下如何利用软引用和弱引 ...

  8. 如何有效地报告 Bug

    如何有效地报告 Bug 引言 为公众写过软件的人,大概都收到过很拙劣的bug(计算机程序代码中的错误或程序运行时的瑕疵--译者注)报告,例如: 在报告中说"不好用": 所报告内容毫 ...

  9. WCF技术剖析之二十五: 元数据(Metadata)架构体系全景展现[元数据描述篇]

    原文:WCF技术剖析之二十五: 元数据(Metadata)架构体系全景展现[元数据描述篇] 在[WS标准篇]中我花了很大的篇幅介绍了WS-MEX以及与它相关的WS规范:WS-Policy.WS-Tra ...

随机推荐

  1. 基本排序(二)插入排序(直接插入、Shell、折半)

    插入排序是常见的内部排序之一.常见的插入排序包括直接插入排序.Shell排序.折半排序.本篇主要介绍这三个排序. 转载请注明出处——http://www.cnblogs.com/zrtqsk/p/38 ...

  2. Mongodb学习笔记一(Mongodb环境配置)

    Mongodb学习 说明: MongoDB由databases组成,database由collections组成,collection由documents组成,document由fileds组成.Mo ...

  3. ASP.NET中的缓存机制

    ASP.NET 提供一个功能完整的缓存引擎,页面可使用该引擎通过 HTTP 请求存储和检索任意对象.缓存的生存期与应用程序的生存期相同,也就是说,当应用程序重新启动时,将重新创建缓存. 将数据添加到缓 ...

  4. Coding 及 git 的工程使用方法

        在过去的两周,同学们除了在学习 C 语言之外,还在学习如何利用 git 将自己的代码上传到 coding 中.也有大量的同学,成功的上传了代码.但是,实际上大部分同学的用法都不合理.这里,以一 ...

  5. ical4j 实现ICS文件的生成和解析

    iCalendar 简介 iCalendar,简称"iCal",是"日历数据交换"的标准(RFC 2445),该标准提供了一种公共的数据格式用于存储关于日历方面 ...

  6. 线段树 HDU 3397(真)

    5 种操作  0 1 然后 异或 似乎这种2个更新的先后每次都搞不清 覆盖有覆盖就可以不异或 也不知道为什么 #include<stdio.h> #include<string.h& ...

  7. 在ubuntu/deepin/mint等系统中使用命令删除文件或文件夹

    此命令操作需谨慎: sudo rm -rf 文件夹路径(或文件路径)  

  8. py-faster-rcnn +cudnn V5

    转载自http://blog.csdn.net/u010733679/article/details/52221404,经过实际操作,采用了第二种手动替换代码文件.修改个别函数名的方式,成功编译. - ...

  9. VS2015链接错误一则

    以前天真的以为C是C++的子集,.c文件直接.cpp命名没什么影响: 后缀一改 链接器工具错误 LNK2019

  10. js 中关于this用变量存起来的原因

    近来,不忙,总是在网上看大牛的博客,发现关于this指向的情况,有的说是4种,也对,有的就是总结一句话,也对,但是我发现一种特殊情况,例子如下 var show={ btn:$('.div1'), i ...