软件测试 —— Bug

【Bug规范】

  1. Bug标题中需包含Bug的具体位置并以【】标注 举例:【模块-子模块-页面】XXXXXXXXXXXX
  2. Bug标题尽量简明
    •   做什么操作 + 出现什么结果,比如(点击提交按钮,出现卡顿现象)
    •   字数一般不超过15个字
  1. Bug标题中切勿出现错别字 错误示例: 奔溃(崩溃),电击(点击),登陆,(登录),重置(充值),现实(显示)
  2. 当所发现Bug前提条件为空时,需要填无。特殊条件下的Bug必须详细描述产生Bug的前提。 示例:只有在使用附件中的图片(大图片:60M)时,会出现此Bug。
  3. 描述复现步骤中的页面切换为避免出现描述不清晰或者有歧义,需用“->”符号连接 正确示例:(首页->我的->我的订单->未支付,点击一个未支付订单,进入订单详情页)
  4. 在描述过程中 错误提示类Bug需用引号进行标注,不能出现描述不清的情况。
  5. Bug的附件中包含的截图需增加相应的红框标识,便于Bug的定位。
  6. 所提Bug附件的命名需要与Bug标题相呼应,不能出现名称怪异或冗长。 错误示例:QQ视频20168377894872.MP4
  7. 在描述Bug过程中不能不精确词语,这会导致Bug描述不清晰,没办法复现Bug
    •   示例1:连续几次,多次点击,长时间上下滑动屏幕等模糊表述
    •   示例2:进入页面后等待一段时间。再点击XX按键。
    •   示例3:APP崩溃,手机崩溃,系统崩溃,APP重启,手机重启此类表述混乱。

    8.描述Bug过程中“预期结果”与“实际结果”必须有条理且符合逻辑。

    9.Crash的Log取的时间尽量不能超过10分钟。

    10.Bug截图、视频、Log以及描述需和Bug内容必须相符合。

    11.交付过程中需对提出Bug内容进行梳理和归类不能出现明显的重复Bug。

    12.概率性问题,把操作过的概率标注上去,比如,按照什么样操作5次,复现两次

    若找到大致的复现规律,在该Bug中写清楚

【Bug 分析】

分析就是将研究对象的整体分为各个部分、方面、因素和层次,分别加以考察、认识。

软件BUG分析是将软件生命周期中所有BUG作为研究对像,分析BUG产生的阶段、产生的模块、产生的原因,发现软件生命周期中过程、阶段、技术、人和组织存在的问题,以及软件开发过程中各关键环节和要素之间的协作问题,通过调整、改进和控制,提高软件质量、节省软件成本,提升组织生产力,交付优质软件成果。

1.BUG分析的目的

基本BUG分析是基于测试阶段发现的BUG,通过BUG的分布和趋势研究,发现BUG产生的根源,及早采取调整和控制措施,预防和控制问题的蔓延和新问题的产生,提升软件质量。

深入BUG分析是基于软件生命周期中的所有BUG,使用统计分析方法,通过BUG的共性发现软件生命周期中技术、人、过程、项目和组织存在的问题,揭示软件质量、过程质量、人员能力、组织能力之间的关系,加强软件精细化管理,促进人、过程、组织持续性改进。

2.BUG分析的根本

质量不是检查出来的,而是生产出来的。

人创造了软件,构建了软件质量,同时也产生了大量BUG。人是软件生产的主体,众多不同个性和技术能力的人组成了软件组织,人的软件活动构成了软件的生产过程。

人决定了软件的质量,软件BUG分析的根本最终落脚于对人的分析。通过BUG分析发现软件生命周期中人的缺陷和不足(技术、沟通、规范性等),制定有针对性的方法和训练提高人员技术能力、沟通能力,增强软件过程人为活动的规范性,减少人为的疏忽和失误,最终构建有效的软件过程,提升组织的综合生产力,提高软件成果交付质量。

深入BUG分析
图3BUG分析根本

3.BUG分析的层次

软件BUG分析分为四个层次:基本分析、过程分析、人员分析、组织分析。

通过BUG的层次分析,提升BUG的使用质量,发现软件生命周期中存在的问题,推动人、过程、组织的持续改进,体现BUG的价值。

BUG分析基于不同分析指标的BUG数量统计展开分析,常见方式有占比、趋势、分布、对比等方法,使用饼图、折线图、柱状图、散点图等进行图形化展示。

 

深入BUG分析

图4BUG分析层次

1)BUG的基本分析

BUG的基本分析是BUG其它层次分析的基础。

BUG的基本分析基于软件项目的当前的BUG数据信息,通过聚类分析方法展示BUG在当前软件项目中的分布情况、发展趋势,评价当前软件及项目质量。常见分析指标包括BUG状态、解决状态、严重程度、软件模块、软件版本等。

BUG的基本分析的不足在于只局限于BUG产生的阶段(多集中于测试阶段)和软件本身,针对项目当前某个模块或是功能的质量进行评价,缺少对项目整体和软件开发全局的认识。

2)BUG的过程分析

BUG的过程分析基于组织的度量目标和标准化过程定义,对比BUG的统计数据,对软件过程进行了有效控制,对软件过程和软件开发质量进行评价,并及时进行纠偏和整改。

BUG的过程分析的不足在于仍然只关注软件本身,只关注过程而忽视了细节,重视对比标准的偏差而不能发现产生偏差的原因并制定有效的纠偏方案。

3)BUG的人员分析

BUG的人员分析关注BUG产生的最根本的因素“人”,基于BUG的基本分析和过程分析,发现人在软件生命周期中存在的缺陷和不足,通过合理调配人员、增加培训、加强管控等方式,减少软件过程中人的疏忽和失误,从根本上促进软件过程改进,提升软件质量,降低软件成本,为项目的精细化管理提供数据支撑。

BUG的人员分析的不足在于获得的分析结果只能反映到某个项目或某个团队的生产能力现状和改进结果,不能提供给组织进行参考,无法提升BUG的分析价值和作用。

4)BUG的组织分析

BUG的组织分析关注组织的良性生存与发展,组织的强大在于保存现有核心竞争力的同时,发现和弥补不足、扩大竞争优势。BUG的组织分析基于BUG的人员、过程和基本分析,为组织内其它项目的评估、管理提供有价值的参考信息;为组织内相关职能部门的工作改进方案提供数据支撑,实现组织资源的合理配置;关能及时发现组织中存在的漏洞,及时改正、持续改进,保证组织的运营的高效、可持续、健康发展。

BUG的组织分析将BUG分析的视角从细节扩展到过程、从个人发展到组织,自下而上形成支撑,自上而下产生影响,极大提高了BUG的使用质量和使用效率,将BUG价值极大化。

五、  深入BUG分析

 

深入BUG分析

图5深入BUG分析

1.BUG是软件生命周期中的重要的数据,应当被足够的重视和利用。

2.注意组织内BUG数据积累,使用标准流程和成熟的缺陷管理工具对BUG进行管理,并通过缺陷工具提供的分析方法对BUG进行基本分析。

3.深入BUG分析,提高BUG使用质量,挖掘BUG使用价值。

4.基于BUG数据统计,加强层次化分析。按项目、过程、阶段、模块、技术、人等不同维度和层次,在同一软件的生命周期内进行纵向关联分析,不同软件之间进行横向对比分析,获取多维度、多层次分析数据,实现精益化软件开发、度量和管理。

5.使用数据挖掘方法,分析BUG的产生与软件开发过程中的人、过程、组织间的关联关系,发现BUG产生的深层次原因,研究解决方案,预防和降低BUG的产生,形成从BUG分析到组织生产能力提升的数据支撑,完成组织生产能力提升到个人素质增长的正向驱动。

6.利用第三方数据分析工具,高效的对BUG数据进行抽取、清洗、转换,基于强大的分析功能实现BUG分析的多维度、多层次动态分析展示,提升BUG的分析效果,实现BUG可视化、精细化管理,为软件组织的精益化管理提供多方位的数据支持。

猜你喜欢

转载自www.cnblogs.com/StephenChen/p/9045040.html