软件测试 —— Bug
【Bug规范】
- Bug标题中需包含Bug的具体位置并以【】标注 举例:【模块-子模块-页面】XXXXXXXXXXXX
- Bug标题尽量简明
- 做什么操作 + 出现什么结果,比如(点击提交按钮,出现卡顿现象)
- 字数一般不超过15个字
- Bug标题中切勿出现错别字 错误示例: 奔溃(崩溃),电击(点击),登陆,(登录),重置(充值),现实(显示)
- 当所发现Bug前提条件为空时,需要填无。特殊条件下的Bug必须详细描述产生Bug的前提。 示例:只有在使用附件中的图片(大图片:60M)时,会出现此Bug。
- 描述复现步骤中的页面切换为避免出现描述不清晰或者有歧义,需用“->”符号连接 正确示例:(首页->我的->我的订单->未支付,点击一个未支付订单,进入订单详情页)
- 在描述过程中 错误提示类Bug需用引号进行标注,不能出现描述不清的情况。
- Bug的附件中包含的截图需增加相应的红框标识,便于Bug的定位。
- 所提Bug附件的命名需要与Bug标题相呼应,不能出现名称怪异或冗长。 错误示例:QQ视频20168377894872.MP4
- 在描述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分析发现软件生命周期中人的缺陷和不足(技术、沟通、规范性等),制定有针对性的方法和训练提高人员技术能力、沟通能力,增强软件过程人为活动的规范性,减少人为的疏忽和失误,最终构建有效的软件过程,提升组织的综合生产力,提高软件成果交付质量。
图3BUG分析根本
3.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分析
图5深入BUG分析
1.BUG是软件生命周期中的重要的数据,应当被足够的重视和利用。
2.注意组织内BUG数据积累,使用标准流程和成熟的缺陷管理工具对BUG进行管理,并通过缺陷工具提供的分析方法对BUG进行基本分析。
3.深入BUG分析,提高BUG使用质量,挖掘BUG使用价值。
4.基于BUG数据统计,加强层次化分析。按项目、过程、阶段、模块、技术、人等不同维度和层次,在同一软件的生命周期内进行纵向关联分析,不同软件之间进行横向对比分析,获取多维度、多层次分析数据,实现精益化软件开发、度量和管理。
5.使用数据挖掘方法,分析BUG的产生与软件开发过程中的人、过程、组织间的关联关系,发现BUG产生的深层次原因,研究解决方案,预防和降低BUG的产生,形成从BUG分析到组织生产能力提升的数据支撑,完成组织生产能力提升到个人素质增长的正向驱动。
6.利用第三方数据分析工具,高效的对BUG数据进行抽取、清洗、转换,基于强大的分析功能实现BUG分析的多维度、多层次动态分析展示,提升BUG的分析效果,实现BUG可视化、精细化管理,为软件组织的精益化管理提供多方位的数据支持。
软件测试 —— Bug的更多相关文章
- 软件测试 -- Bug等级划分规范
1. Blocker级别——中断缺陷 客户端程序无响应,无法执行下一步操作. 2. Critical级别――临界缺陷,包括: 功能点缺失,客户端爆页. 3. Major级别——较严重缺陷,包括: 功能 ...
- 自动化运维工具Ansible的简单使用
一 基础使用 1. 简介ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了批量系统配置. ...
- 软件测试面试-如何高质量提交缺陷bug?
从实际工作中整理,如下:如有补充可以讨论! 所以会发现现在的面试题大部分问的都是工作中出现的场景了,而不是单纯的背诵 1:充分理解需求规则.原型图,知道预期结果,操作时判断是否为bug 解析:预期结果 ...
- 软件测试中Bug的生命周期以及Bug的严重等级
软件测试中Bug的生命周期以及Bug的严重等级 我猜你们都会,但能说专业且全面不? 1.首先当测试人员接到一个项目或产品准备测试的时候,测试人员会根据测试用例一步步的来执行用例进行简单的功能测试.当测 ...
- 《BUG创造队》作业8:软件测试与Alpha冲刺(第四天)
项目 内容 这个作业属于哪个课程 2016级软件工程 这个作业的要求在哪里 实验十二 团队作业8:软件测试与ALPHA冲刺 团队名称 BUG创造队 作业学习目标 (1)掌握软件测试基础技术.(2)学习 ...
- 软件测试人员遇到发现的bug不能重现怎么办?
软件测试人员遇到发现的bug不能重现怎么办? 刚刚进入测试的童鞋们,想必都遇到过提出的bug,开发要求重现之后,但是在系统上已经重现不了的情况吧. 那么碰到这样的情况,不管开发还是测试都很纠结,开 ...
- 《BUG创造队》作业8:软件测试与Alpha冲刺(第一天)
项目 内容 这个作业属于哪个课程 2016级软件工程 这个作业的要求在哪里 实验十二 团队作业8:软件测试与ALPHA冲刺 团队名称 BUG创造队 作业学习目标 (1)掌握软件测试基础技术.(2)学习 ...
- 《BUG创造队》作业8:软件测试与Alpha冲刺(第二天)
项目 内容 这个作业属于哪个课程 2016级软件工程 这个作业的要求在哪里 实验十二 团队作业8:软件测试与ALPHA冲刺 团队名称 BUG创造队 作业学习目标 (1)掌握软件测试基础技术.(2)学习 ...
- 《BUG创造队》作业8:软件测试与Alpha冲刺(第三天)
项目 内容 这个作业属于哪个课程 2016级软件工程 这个作业的要求在哪里 实验十二 团队作业8:软件测试与ALPHA冲刺 团队名称 BUG创造队 作业学习目标 (1)掌握软件测试基础技术.(2)学习 ...
随机推荐
- 在 Azure 中创建通用 VM 的托管映像
可以从在存储帐户中存储为托管磁盘或非托管磁盘的通用 VM 中创建托管映像资源. 然后可以使用该映像创建多个 VM. 使用 Sysprep 通用化 Windows VM Sysprep 将删除所有个人帐 ...
- 64位的Sql Server使用OPENROWSET导入xlsx格式的excel数据的时候报错(转载)
In the old times while all the CPUs were 32bit, we were happily using JET OLEDB Provider reaching Ex ...
- 【转】Python学习---Socket通信原理以及三次握手和四次挥手详解
[原文]https://www.toutiao.com/i6566024355082404365/ 什么是Socket? Socket的中文翻译过来就是"套接字".套接字是什么,我 ...
- JavaBeansDataExchange could not instantiate result class
当ibatis初始化Bean的时候,会调用无参的构造函数,所以如果Bean中有带参的构造函数,一定得多写个无参的构造函数, 否则ibatis会因找不到构造函数而出错,抛出异常如下:JavaBeansD ...
- 使用Swoole 构建API接口服务
网上类似的文章已经很多了,我也是刚入门.从头开始学习.所以如果重复写文章阐释,反而会浪费时间,于是就自己动手构建了一个demo,使用swoole 的TCP 服务器接受TCP客户端的发来的http请求, ...
- Office Web app server 2013 目前无法和windows server 2012 R2兼容。
另外旧版的office文档和PDF格式不支持预览功能.
- [HZNOI #koishi] Magic
[HZNOI #514] Magic 题意 给定一个 \(n\) 个点 \(m\) 条边的有向图, 每个点有两个权值 \(a_i\) 和 \(b_i\), 可以以 \(b_i\) 的花费把第 \(i\ ...
- AnyHashable类型擦除的原因:set和dictory需要指定一个确定的类型
AnyHashable 属于无关联类型的擦除. 将具体类型的类型信息擦除掉了,只剩下协议类型的信息暴露出来. 类型擦除实践:将相同协议的不同实现屏蔽起来,暴露出类型的共同特征(协议接口). A typ ...
- jQuery 实现复选框的全选与反选
<script> //实现全选与反选 $(".allAndNotAll").click(function () { if ($(this).prop("che ...
- easyui combobox 带 checkbox 亲自验证
$('#cc').combobox({ url:'combobox_data1.json', method:'get', ...