
软件缺陷报告PPT课件.ppt
23页软件缺陷报告软件缺陷报告2021/7/231分享目录•1.软件缺陷软件缺陷•1.1软件缺陷的含义•1.2软件缺陷的属性•1.3软件缺陷产生的原因•1.4软件缺陷的分布•1.5如何确认缺陷•1.6软件缺陷的读者1.6.1读者希望从软件缺陷报告中得到的内容•2.软件缺陷报告软件缺陷报告•2.1衡量缺陷报告质量的标准•2.2软件缺陷的写作准则•2.3怎样有效记录缺陷•2.4缺陷报告的产生过程•2.5缺陷报告写作过程中注意事项2021/7/2321.软件缺陷软件缺陷1.1软件缺陷的含义 什么是软件缺陷? 不满足用户确定需求 简单的说就是存在于软件(文档、数据、程序)之中的那些不希望,或不可接受的偏差,而导致软件产生的质量问题按照一般的定义,只要符合下面5个规则中的一个,就叫做软件缺陷2021/7/233可称之为软件缺陷的五个规则:•软件未达到产品说明书标明的功能•软件出现了产品说明书指明不会出现的错误•软件功能超出产品说明书指明范围•软件未达到产品说明书虽未指出但应达到的目标•软件测试员认为软件难以理解、不易使用、运行速度缓慢,或者最终用户认为不好2021/7/234属性名称描述缺陷标识(Identifier) 缺陷标识是标记某个缺陷的一组符号。
每个缺陷必须有一个唯一的标识缺陷类型 (Type) 缺陷类型是根据缺陷的自然属性划分的缺陷种类缺陷严重程度 (Severity)缺陷严重程度是指因缺陷引起的故障对软件产品的影响程度缺陷优先级(Priority) 缺陷的优先级指缺陷必须被修复的紧急程度缺陷状态(Status) 缺陷状态指缺陷通过一个跟踪修复过程的进展情况缺陷起源(Origin) 缺陷来源指缺陷引起的故障或事件第一次被检测到的阶段缺陷来源(Source)缺陷来源指引起缺陷的起因缺陷根源(Root Cause)缺陷根源指发生错误的根本因素1.21.2软件缺陷的属性软件缺陷的属性2021/7/2351.3软件缺陷产生的原因–工期短,任务大;–程序设计错误;–文档不完善;–需求不断变化;–沟通交流不够;–软硬件环境不完善;–软件的复杂性2021/7/2361.41.4软件缺陷的分布(主要在于产品的描述及说明书)软件缺陷的分布(主要在于产品的描述及说明书)2021/7/2371.5如何确认缺陷•判断发现的问题是否是缺陷的方法–通过参考文档来确认缺陷–通过了解软件产品的行业背景(或参考同类典型软件)来发现缺陷–通过沟通来确认和识别缺陷2021/7/2381.6缺陷报告的读者在书写软件缺陷报告之前,需要明白谁是缺陷报告的读者对象,知道读者最希望从缺陷报告中获得什么信息。
通常,•缺陷报告的直接读者是软件开发人员和质量管理人员;•来自市场和技术支持等部门的人员2021/7/239读者希望从软件缺陷报告中得到的内容•易于搜索软件测试报告的缺陷;•报告的软件缺陷进行了必要的隔离,报告的缺陷信息具体、准确;•软件开发人员希望获得缺陷的本质特征和复现步骤;•市场和技术支持等部门希望获得缺陷类型分布以及对市场和用户的影响程度2021/7/23102.软件缺陷报告软件缺陷报告2.1衡量缺陷报告质量的标准•对管理层来说,是清晰明了的,特别是在概要这一级;•对于开发部门是有用的,主要是给出能够让开发人员高效地调试问题的相关信息•可以使测试人员很快的将bug从“Opened”状态转变成“Closed”状态,减少从开发人员打回的差的bug report并导致测试人员返工的时间2021/7/23112.2软件缺陷报告的准则Correct(准确):每个组成部分的描述准确,不会引起误解; Clear(清晰):每个组成部分的描述清晰,易于理解; Concise(简洁):只包含必不可少的信息,不包括任何多余的内容; Complete(完整):包含复现该缺陷的完整步骤和其他本质信息; Consistent(一致):按照一致的格式书写全部缺陷报告。
2021/7/23122.3怎样有效记录缺陷•保证缺陷重现•分析故障——使用最少步骤复现故障•包含所有重现缺陷的必要步骤•方便阅读•尽量简单——一个缺陷一个报告•注意自己的语气•报告随机缺陷2021/7/2313•不夸大缺陷•报告小缺陷•及时报告缺陷•引用别人报告不要擅自修改•缺陷报告中注明姓名和日期2021/7/23142.4缺陷报告的产生过程 组织-重现-隔离-归纳-对比-总结-精简-消除歧义-中立-检查2021/7/2315•组织组织Structure::测试人员应该采用深思熟虑的,小心谨慎的方法执行测试,并且做详尽的记录这样可以促使他们对测试下的系统有很好的认识当错误发生的时候,一个有组织的测试人员能够知道最早出现问题的地方在哪;•重现重现Reproduce::测试人员在编写bug report之前必须在检查问题是否可重现如果错误不可再重现,仍然应该写下来,但是必须说明问题的偶然性一个好的处理原则就是在编写bug report之前反复尝试3次;•隔离隔离Isolate::在尝试编写bug report之前,必须试着隔离错误可以采用改变一些变量的方法,如系统的配置,它可能会改变错误的症状。
这些信息可以为开发人员着手调试提供思路;2021/7/2316•归纳归纳Generalize::在测试人员发现了一个已隔离的,可重现的问题后,应该对问题进行归纳同一个问题是否出现在其他的模块或其他的地方?同一个故障是否有更加严重的问题;•对比对比Compare::如果测试人员验证过现在出错的测试用例,那么他就应该检查以前的测试结果以检查相同的条件是否通过以前的测试如果是的话, 那么这个问题就象是一个回归的错误注意由于同一测试条件有可能出现在多个测试用例中,这个步骤就不仅仅只是检查一个测试用例在以前的多个结果;•总结总结Summarize::在bug report的第一行写上错误的总结是非常关键的测试人员要思考已发现的错误对客户有何影响这不仅仅要求测试人员编写的报告要能够吸引读者,可以和读者沟通清晰,还要能够帮助设置错误修复的优先级别;2021/7/2317•精简精简Condense::在bug report的初稿完成后,测试人员应该反复阅读它,集中剔除那些没有关系的步骤或词语隐含的或模糊的说明和那些由于对没有任何关系的细节或者那些在重现错误过程中不需要的步骤而消磨报告欢迎程度的无穷唠叨都不是bug report的目标;•消除歧义消除歧义Disambiguate::测试人员在精简空话的同时或其之后随即应该再仔细检查报告是否有会产生误解的地方。
测试人员应该尽量避免使用模糊的,会产生歧义的和主观的词语目标是使用能够表述事实,清楚的,不会产生争执的词语;•中立中立Neutralize::如同所有的错误总结一样,独立的bug report在措辞方面应该保持公正攻击开发人员,指责潜在的错误,企图诙谐或使用挖苦将引起开发人员的憎恶,并且使注意力从“提高产品质量”这个大的目标上转移开了谨慎的测试人员只用Bug report来描述事实;2021/7/2318•检查检查Review::一旦编写好bug report,作者应该再次阅读,确保符合缺陷报告的写作准则,然后提交至Bug管理工具中同时,也可以在测试人员之间互相检查,完善后再提交在允许的时间里,测试小组应该尽可能提交最好的bug report2021/7/23192.5缺陷报告写作过程中注意事项 •标题应该保持简短、准确、易于理解,提供缺陷的本质信息,并且便于读者搜索查寻;•使用委婉的说法:“混乱的UI”可以被温和些改为“不正确的UI”; 避免使用: “我(I)”“你(You)”情绪化的语言和强调符号!!!“似乎”“看上去可能” 认为比较幽默的内容不确定的测试问题2021/7/2320•清楚的列出前提条件;•“可重现的步骤”的流程应该是合乎逻辑的;•“可重现的步骤”应该详尽。
例如,如果你想用户在Microsoft Word里保存一个文件,你可以要求用户到File菜单并且点击Save子菜单项你也可以只说“保存文件”;•如果bug是随机出现的,只需在bug report中说一下就可以了但是不要忘记归档它;•写下问题可以被重现的平台;•遇到几个问题却有一样的结果,只需写一个bug report;•截屏截屏是验证的一种方法在截屏上写上注释以指出问题所在这将帮助开发人员一眼就可以马上定位问题; 2021/7/2321 尽量使用jpg或gif的格式,而不是bmp格式; 为了更好的传递缺陷图像的信息,图片的命名应该尽量与BUG内容一致2021/7/2322书写摘要的例子书写摘要的例子原始描述错误原因改进的标题英文单词的连字符不管用描述太笼统什么时候不起作用?在行末尾换行时,不能根据英文单词长度设置连字符段落调整出现错误状态描述太笼统不正确的行为是什么?选定两个单词,启动单词“字间距”自动调整后间隔排版错误警告:该命令产生了错误的结果没有包含原因与结果信息描述内容太长更新位图图像保存到服务器时,警告:“错误”在鼠标点击执行每一个拷贝或复制的编辑功能之后,响应时间很长。
没有指明原因与结果,包含了过分详细的细节信息拷贝和复制功能执行效率低插入的引号成为特殊符号信息没有充分隔离所有的引号都如此吗?什么类型的引号在文档中插入一个智能引号成为不可识别的字符串2021/7/2323。






![河南新冠肺炎文件-豫建科[2020]63号+豫建科〔2019〕282号](http://img.jinchutou.com/static_www/Images/s.gif)





