• 微信公众号:美女很有趣。 工作之余,放松一下,关注即送10G+美女照片!

【测试笔记】——如何填写软件缺陷报告

开发技术 开发技术 2周前 (04-07) 6次浏览

测试工程师需要利用对需求的理解、高效的执行力以及严密的逻辑推理能力,迅速找出软件中的潜在缺陷,并以缺陷报告的形式递交给开发团队,这听起来有点像柯南?

缺陷报告是测试工程师和开发工程师交流沟通的重要桥梁,也是测试工程师日常工作的重要输出。作为优秀的测试工程师,最基本的一项技能就是,把发现的缺陷准确无歧义地表达清楚。

“准确无歧义地表达”意味着,开发工程师可以根据缺陷报告快速理解缺陷,并精确定位问题。同时,通过这个缺陷报告,开发经理可以准确预估缺陷修复的优先级、产品经理可以了解缺陷对用户或业务的影响以及严重性。

可见,缺陷报告本身的质量将直接关系到缺陷被修复的速度以及开发工程师的效率,同时还会影响测试工程师的信用,测试与开发人员协作的有效性。

那么必须牢牢记住的是,好的缺陷报告绝对不是大量信息的堆叠,而是以高效的方式提供准确有用的信息

接下来看一份缺陷报告主要是由哪些部分组成,以及每部分的关键点是什么。

缺陷标题

缺陷标题通常是别人最先看到的部分,是对缺陷的概括性描述,通常采用“在什么情况下发生了什么问题”的模式。

首先,对“什么问题”的描述不仅要做到清晰简洁,最关键的是要足够具体,切忌不能采用过于笼统的描述,描述“什么问题”的同时还必须清楚地表述发生问题时的上下文,也就是问题出现的场景。

“用户不能正常登录” “搜索功能有问题” 和 “用户信息页面的地址栏位置不正确”等,这样的描述会给人“说了等于没说”的感觉。这样的描述,很容易引发开发工程师的反感和抵触情绪,

从而造成缺陷被拒绝修改(reject)。同时还会造成缺陷管理上的困难以及过程的低效。

比如,当你发现了一个菜单栏上某个条目缺失的问题,在递交缺陷报告前,通常会去缺陷管理系统搜一下是否有人递交过类似的缺陷。

当你看到“菜单栏”为关键字搜索时,你可能会得到一堆“菜单栏有问题”的缺陷,如果缺陷标题的描述过于笼统,你就不得不点击进入每个已知缺陷中看细节描述,这就会大大降低你的工作效率。

所有,如果缺陷标题本身就能概括性地描述具体问题,你就可以通过阅读标题判断类似得缺陷是否被提交过,大大提高测试工程师提交缺陷报告的效率。

其次,标题应该尽可能描述问题本质,而避免只停留在问题的表面。

比如,“商品金额输入框,可以输入英文字母和其他字符”这个描述就只描述了问题的表面现象,而采用诸如“商品金额输入框,没有对输入内容做校验”的方式,就可以透过标题看到缺陷的本质,这样可以帮助开发人员快速掌握问题的本质。

最后,缺陷标题不宜过长,对缺陷更详细的描述应该放在“缺陷概述”里。

缺陷概述

缺陷概述通常会提供更多概括性的缺陷本质与现象的描述,是缺陷标题的细化。这部分内容通常是开发工程师打开缺陷报告后最先关注的内容,所以用清晰简短的语句将问题的本质描述清楚是关键。

缺陷概述还会包括缺陷的其他延展部分,比如你可以在这部分列出同一类型的缺陷可能出现的所有场景;再比如,你还可以描述同样的问题是否在之前的版本中重现等。在这里你应该尽量避免以缺陷重现步骤的形式来描述,而应该使用概括性的语句。

总之,缺陷概述的目的是清晰简洁地描述缺陷,使开发工程师能够聚焦缺陷的本质。

缺陷影响

缺陷影响描述的是,缺陷引起的问题对用户或者对业务的影响范围以及严重程度。

缺陷影响决定了缺陷的优先级(Priority)和严重程度(Severity),开发经理会以此为依据来决定修复该缺陷的优先级;而产品经理会以此为依据来衡量缺陷的严重程度,并决定是否要等该缺陷被修复后才能发布产品。

测试工程师准确描述缺陷影响的前提下,必须对软件的应用场景以及需求有深入的理解,这也是对测试工程师业务基本功的考验。

环境配置

环境配置用以详细描述测试环境的配置细节,为缺陷的重现提供必要的环境信息。比如,操作系统的类型与版本、被测软件版本、浏览器的种类和版本、被测软件的配置信息、集群的配置参数、中间件的版本信息等待。

需要注意的是,环境配置的内容通常是按需描述,也就是说通常只描述那些重现缺陷的环境敏感信息。

比如,“菜单栏上某个条目缺失的问题”只会发生在Chrome浏览器,而其他浏览器都没有类似问题。那么Chrome就是环境敏感信息,必须予以描述,而至于Chrome浏览器运行在什么操作系统就无关紧要了,无需特意去描述了。

前置条件

前置条件是指测试步骤开始前系统应该处在的状态,其目的是减少缺陷重现步骤的描述。合理地使用前置条件可以在描述缺陷重现步骤时排除不必要的干扰,使其更有针对性。

比如,某个业务操作先需要完成用户登录,你在缺陷重现步骤里就没有必要描述登录操作的步骤细节,可以直接使用“前置条件:用户已完成登录”的描述方式:

再比如,用户在执行登录操作前,需要事先在被测系统准备好待登录用户,你在描述时也无需增加“用测试数据生成工具生成用户”的步骤,可以直接使用“前置条件:用户已完成注册”的描述方式。

缺陷重现步骤

缺陷重现步骤是整个缺陷报告中最核心的内容,其目的在于用简洁的语言向开发工程师展示缺陷重现的具体操作步骤。

这里需要注意的是,操作步骤通常是从用户角度出发来描述的,每个步骤都应该是可操作并且连贯的,所以往往会采用步骤列表的表现形式。

通常测试工程师在写缺陷重现步骤前,需要反复执行这些步骤3次以上:一是,确保缺陷的可重现性;二是,找到最短的重现路径,过滤掉那些非必要的步骤,避免产生不必要的干扰。

对于缺陷重现步骤的描述应该尽量避免以下3个常见问题:

1.笼统的描述,缺乏可操作的具体步骤。

2.出现与缺陷重现不相关的步骤。

3.缺乏对测试数据的相关描述。

期望结果和实际结果

期望结果和实际结果通常和缺陷步骤绑定在一起,在描述重现步骤的过程中,需要明确说明期待结果和实际结果。期待结果来自于对需求的理解,而实际结果来自于测试执行的结果。

通常来讲,当你描述期望结果时,需要说明应该发生什么,而不是什么不应该发生;而描述

 


程序员灯塔
转载请注明原文链接:【测试笔记】——如何填写软件缺陷报告
喜欢 (0)