• 13
  • 13
分享

  Bug报告是测试的重点,无论是口头的还是书面的,都是测试最明显的结果。

  报告的质量可能是决定测试人员可信度的最重要的因素,一份好的Bug报告不仅可以体现测试人员的专业度,还可以方便开发人员或其他相关人员快速获取Bug相关信息,有助于对Bug的重要程度进行评估和快速修复。

  什么是Bug

  通俗意义上讲,Bug就是影响产品正常使用或者友好使用,且对产品价值产生影响的缺陷。

  Bug可以分为两种:正常Bug和增强需求型Bug。

  正常的Bug指的是产品未能实现自身功能;而增强需求型Bug是当你认为需求本身应该改进或优化时产生的问题。

  换句话说,“产品没有按照你的期望运行”是一个常见的Bug“,产品已经实现了你需求的功能,但是你觉得可以有更好的实现方式时,这就产生了增强需求型Bug。

  举个例子:

  假设有一个web应用,点击按钮无响应,那么这是一个正常Bug;

  假如点击按钮有响应,但是按钮图标或形式你觉得可以更好时,这个时候你提出的Bug可以被称作增强需求型Bug。

  什么是Bug报告

  Bug报告是对可疑错误的描述。

  最基本的Bug报告是这样的陈述:“我认为产品可能存在一些问题。”在现实生活中,这可以表现为简单地指着屏幕说:“哦,快看,那是个Bug。”

  事实上,当你在为站在你身边的朋友进行测试时,你所需要做的就是让他们知道你的产品应该是什么、应该做什么。如果我们都是亲密的朋友,或者我们有相同的认识,那么Bug报告就会非常容易。

  Bug报告可以是正式的或非正式的、书面的或口头的。即使是最简单的Bug报告,其基础也是具有以下四个元素:

  描述你所感知到的问题

  你在测试过程中遇到了什么问题,具体一点、说清楚一点。问问你自己,这是否是问题的根源,或者这是否是最终的问题,更或者是否有更大、更基本的问题存在。例如:你可以描述“我在点击这个按钮的时候无响应“。

  你是如何遇到这个问题的

  你所感知到的Bug该基于对产品本身的直接观察。详细说明你使用的步骤和数据。

  例如:在什么步骤输入什么样的数据产生的这个Bug,这是一个偶现的Bug还是一个频发的Bug,你有截屏或视频吗,你使用的数据是什么,什么文件,你到底输入了什么?

  为什么是一个问题

  说明你识别问题的方法,可以是需求文档,也可以是一些标准规范等。

  例如:问题现象与需求不一致——功能Bug,或问题出现时资源消耗过大——性能Bug。

  为什么这是个重要的问题

  你的客户可能需要知道:这是一个大Bug还是一个小Bug?你应该准备好说明Bug可能有多重要,而重要性与它被发现的可能性以及它发生时可能造成的损害程度有关。

  例如:你可以描述“这是个严重Bug,等级为L1,因为这个Bug的出现导致系统卡死无法正常运行”。

  Bug报告中的关键内容

  以下是正式Bug报告中最常见的字段:

  标题

  描述Bug本质的简短总结:

  长度不宜过长

  一般来说,标题以不超过12个字为佳。

  标题具有独特性

  每个Bug标题都能与其他标题相区分。例如,不要写“产品崩溃”这种通用性标题。

  描述

  任何关于特定故障模式和行为的其他信息:

  ·描述尽量保持简短

  给出有关Bug的合理细节,但不要包含团队中每个人都肯定知道的信息。如果问题很明显,例如“公司名称在主页上拼错了”,那么你几乎不需要写描述。

  ·描述尽量专业

  不要在一个Bug报告中涉及多个问题。

  非多个问题可能是产品中一个潜在故障的症状,否则应该将它们划分为不同的错误报告。这是因为开发人员很容易修复一个问题,而不小心忘记修复同一报告中列出的其他问题。

  ·尽量描述重要的步骤

  不要提供那些显而易见的步骤,例如:

  1.连接到Internet;

  2.启动浏览器。

  描述你认为是Bug的原因

  这意味着要说明你为什么认为这是一个Bug,除非这很明显。不要说“产品不应该崩溃”这样的模糊不清的蠢话。这种描述毫无意义。

  可以添加一点你知道的Bug的解决方法。

  版本

  注意附上你测试的版本信息。

  注意:如果同一个Bug在多个版本中出现,将该Bug链接到最重要的版本。

  例如:Bug A在开发版本Develop V1和发布版本Release V2中同时出现,请在描述中版本信息写明Release V2。因为使用重要版本信息,可以极大地引起开发人员和管理人员对此Bug地关注。

  环境

  你测试的平台。例如:硬件、浏览器和操作系统等信息。

  附件

  能够帮助理解和分析Bug的一些日志、屏幕截图、录屏等。

  除了上述基本字段之外,Bug跟踪系统(如jira)可能还有其他字段。它将自动填充ID、Reporter和Date Reported字段,以及状态、严重性和优先级等。

  如何判定一个Bug的重要性

  测试人员是判断Bug“有多大”的第一个人。对于负责任的测试人员来说,这是你工作中非常重要的一部分。

  那么如何判定一个Bug的重要性呢?你可以参考这几个方面:

  Bug出现的频率

  在其他条件相同的情况下,一个经常被很多用户看到的Bug将变得更加重要。是否有很多不同类型的事件可以触发这个Bug?它是否极易受到触发事件的影响?当它出现的时候有多明显?

  当它发生的时候会造成多大的损失

  虽然对于哪些具体症状构成“更严重的损害”没有严格的规则,但请尝试可视化问题,然后考虑受影响的用户的重要性。

  最重要的错误通常是那些阻碍项目本身的错误:就是所谓的阻塞错误,这些是妨碍你进行测试或者用户正常使用的Bug。

  例如”软件崩溃不能正常使用“,此类现象的Bug可以称为最重要的Bug,其次是会对用户使用造成某些影响但不至于无法使用的Bug。

  Bug具有潜在的其他风险

  Bug可能特别重要,因为它意味着开发过程本身存在一个大问题,可能导致许多类似的Bug还没有被发现。

  Bug会给产品带来什么样的负面影响

  虽然一些Bug在客观上没有那么严重,例如:并没有阻碍产品的正常使用。但是,它会影响用户对产品的好感度和信任度,那么这个时候它也是一个严重Bug。

  举个例子

  以jira工具为例,报告一个并发请求导致系统崩溃的Bug。关键信息如下图1所示。

  jira默认包含了版本、环境、优先级等信息供用户选择,因此在描述部分可以只关注于对Bug本身信息的描述,如:复现频率、复现步骤等。

  在复现步骤中,采用了Given——When——Then的描述方式,可以使得描述更加简洁和具有逻辑性,推荐大家使用。

1.png

图1 jira上报Bug举例

  总结

  本文主要是向大家介绍了在报告Bug时需要关注的一些重点和细节,希望能为大家带来帮助。

  一份好的Bug报告,可以让我们测试人员显得更为专业,也可以缩短开发人员排查Bug和修复Bug的时间,幸福你我他。希望对大家有所启发~



作者:刘晓佳Rachel   

来源:51Testing软件测试网原创

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   前一段时间IBM中国 "灭霸式"裁员引爆互联网,前后仅花费了三分钟时间,就裁撤员工超过 1000 人。这次被裁的主要是研发及测试岗位,涉及部门是IBM中国开发中心(CDL)和IBM中国系统中心(CSL)。而这位现任IBM 印度裔 CEO此前已经在全球范围内进行了多轮裁员。  IBM中国研发部门的关闭并非孤立事件。此前,微软也将其在中国的研发部门和人员迁往美国。  而远在大洋彼岸的苹果公司和OpenAI也有不同程度的裁员新闻被爆出。据知情人士透露,苹果公司罕见地在其数字服务部门裁员约100人,是这个关键部门优先事项转变的一部分。一位 OpenAI 的前研究员表示,这家企业...
            0 0 345
            分享
          • Selenium自动化测试什么是自动化测试自动化测试指软件测试的自动化,在预设状态下运行应用程序或者系统,预设条件包括正常和异常,最后评估运行结果。总的概括即:将人为驱动的测试行为转化为机器执行的过程。进入今天的主角:selenium 学习功能测试自动化首选工具就是selenium,它是一个web自动化测试工具。selenium的特点支持多平台:IE、Chrome、Firefox、edge、Safari支持多语言:Python、C、Java、C#、ruby、js免费小巧,支持分布式测试用例的执行,可以把测试用例分布到不同的测试机器执行,相当于分发机的功能。自动化工具和自动化框架的区别在学习se...
            13 13 1380
            分享
          •   作为一个测试,最尴尬的莫过于分给你的task,别人做交叉兼容测试的时候,在你负责的内容里找出了很多你没有测试出来的bug。  我也曾因为测试不全被组长在工作群里艾特。说实话,真的恨不得找个地方躲起来。  为了避免自己再次出现类似的情况,我开始写测试笔记。记录负责task中需要测试的内容,然后不断的重复研究测试,这种情况就基本没有了。  复杂的测试笔记,我写了有两年,后来慢慢发现好多东西都是相通的。于是,我整理了一个做测试的模板,每次新分配给我task时,我都按我自己的模板测试。  我做的工作是黑盒测试,基本属于纯黑盒。测试的有web端,android手机端和ios手机端,偶尔也会测试手机带...
            0 0 743
            分享
          •   对于“自己适不适合转行做软件测试?”一直都是测试行业里的热门话题。随着近几 年IT互联网行业的快速发展,软件测试岗位也受到越来越多人的关注,因此有很多人都想要从事这一行业,这里主要分为两类人,一种是刚毕业的应届生,对于很多毕业大学生来说毕业等于失业;另外一种是在其他行业,没有前景没有未来,想要转行。  一、如何判断自己适不适合做软件测试?  其实对于这个问题,除了一小部分人真的在这方面有特别突出的天赋以外,是没有严格区分适合与不适合的。想大家看到的大多数软件测试行业大佬都是从小白菜鸟慢慢成长过来的。其实只要你下定决心想要去学习并坚持,你就是适合的。一名软件测试人员身上具备很多显性特征,下面...
            0 0 802
            分享
          • 在这段测试的工作中,领导长期外地出差,除了邮件,还会经常要用到QQ和经理沟通测试结果的一些东西。就这一段时间来发现了自己对于测试人员的描述问题上发生了很不应该的问题。做测试人员要严谨一点比较好问题一:打字语言不够严谨,以为对方知道要讲的是什么意思,所以打的字很简单。但这样的误区就是测试结果本来就是一个很敏感和严密度要求比较高的问题。问题二:在描述方面,站在测试人员的角度去判断一个问题而给它下结论。这个是不对的。对于同一个问题,对于开发人员,现场配置人员,测试人员看问题的角度都是不一样的,所以下次在描述测试数据的时候不要轻易去下结论,而只要把自己所测试看到的种种现象一一记录清楚,以待评估阶段来定...
            0 0 1054
            分享
      • 51testing软件测试圈微信