最近一个月偷懒了,刚看到一篇博文很不错。最近也是碰到一样的问题,由于我记录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. mybatis 使用经验小结

    一.多数据源问题 主要思路是把dataSource.sqlSesstionFactory.MapperScannerConfigurer在配置中区分开,各Mapper对应的包名.类名区分开 <? ...

  2. JS获取回车事件(兼容各浏览器)

    一.用到onkeydown获取事件动作, 二.用到键盘对应代码keyCode, 三. var event=arguments.callee.caller.arguments[0]||window.ev ...

  3. 扩展htmlhelper.DropDownListFor 支持list数据源和option增加属性

    mvc自带的DropDownListFor数据源必须是IEnumerable<SelectListItem>.并且option不支持增加自定义属性.在使用bootstrap-select组 ...

  4. c++调用lua环境配置

    安装完luaforwindows后进行配置 配置项目属性            

  5. hibernate-cascade级联关系

    <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-mapping PUBL ...

  6. Brackets前端开发IDE工具

    Brackets是一个开源的前端开发IDE工具,网页设计师和前端开发人员必备的前端开发IDE工具. 它能够使你在开发WEB网站实时预览你的网页,目前版本只适用于Chrome浏览器可以实时预览效果 支持 ...

  7. BZOJ2510: 弱题

    求k时刻一个标号转移到各位置的概率,最后枚举每个标号加权求期望.可以发现转移矩阵是循环矩阵,因此乘法是n^2的.另外这个乘法是圆周卷积的形式,然后就作死写了发fft,发现精度升天了= = #inclu ...

  8. QT C1041错误

    使用QT Createor + MSVC2013写程序时.我复制了一份之前OK的代码到新的工程中,工程名字和之前的工程一样,出现了奇怪的错误.开始程序总是崩溃,后来我删掉shadow build目录, ...

  9. 安全测试及B/S C/S安全性比较

    一.用户认证安全的测试要考虑问题: 1.        明确区分系统中不同用户权限 2.        系统中会不会出现用户冲突 3.        系统会不会因用户的权限的改变造成混乱 4.     ...

  10. HP滤波原理浅学

    今天偶然看到如果使用eviews做HP滤波,一时好奇,于是找了点资料看看~ 由于纯属自学,没有找到教材,大家姑且一看咯,也不知道对不对哈.