Bug管理规范
1BUG定义
1.1Bug状态
BUG状态标记BUG当前所处的状态,是用来处理BUG流程的主要参数,JIRA缺陷管理平台有以下一些状态:
新增(New):测试人员新发现的系统Bug;
打开(Open):测试人员通知开发人员需要修改的BUG;
修改(Modify):开发人员正在修改的BUG;
固定(Fixed):开发人员通知测试人员已修复的BUG;
跟踪(Trace):测试人员短时间内很难确定是否已经修复的BUG;
已关闭(Close):测试人员经回归测试后确定已修复的BUG;
已否决(Rejected):被开发人员否决了的BUG;
重新打开(Reopen):Bug未被修复,重新出现在新的测试版本中;
延迟修改(Wait):因为种种原因需要等待延期修复的Bug。
无效bug:现在及以后都不需要改代码的bug;
无效bug处理流程:
1 测试理解错误,不需要改代码解决的问题,开发直接选择解决方式是无效bug,算无效bug;
2 测试理解正确,PRD没有明确说的,但是经过产品确认现在以后都不需要解决的问题;研发或者产品增加备注,然后解决方式为无效bug,算无效bug;
3 Prd修改但是测试没有得到通知,根据旧prd报的bug,开发选择解决结果是无效bug,解决方式选择 “需求理解偏差”,算无效bug;
4 PRD没有写,但产品确认需要改,bug提给产品/经办人改成产品,bug引入阶段改成需求,研发改完,产品修改bug状态为已完成/已修改,不算无效bug;
5 体验类优化的问题,前端组件不支持,算已解决-未解决, 产生原因 外部原因,不算无效bug;
1.2Bug优先级
紧急
导致产品无法正常运行或需要优先处理的任务
重要
系统崩溃、丢失数据或内存溢出等严重错误
一般
一般性错误
次要
程序功能出现错误,但可通过其他手段解决
无关紧要
不影响程序运行的错误,如拼写错误等
1.3BUG自测是否应发现
否:该缺陷不属于研发自测应发现范畴
是,在开发自测用例中:在本次所给自测用例可发现范围内,属于自测应发现情况
是,不在开发自测用例中:在冒烟用例集中,并未在本次项目/需求所给自测用例内,但属于自测应发现范围;
1.4缺陷严重程度
(1)致命错误
致命错误通常有如下情况:
1、需求书中的重要功能未实现;
2、造成系统崩溃、死机,并且不能通过其它方法实现功能;
3、常规操作造成程序非法退出、死循环、通讯中断或异常,数据破坏丢失或数据库异常、且不能通过其它方法实现功能的。
(2)严重错误
严重错误通常使系统不稳定、不安全、或破坏数据、或产生错误结果,而且是常规操作中经常发生或非常规操作中不可避免的主要问题,通常有如下情况:
1、重要功能基本能实现,但系统不稳定、一些边界条件下操作会导致run-time error、文件操作异常、通讯异常、数据丢失或破坏等错误;
2、重要功能不能按正常操作实现,但可通过其它方法可实现;
3、错误的波及面广,影响到其它重要功能正常实现;
4、密码明文显示;
5、C/S、B/S模式下,利用客户端某些操作可造成服务端不能继续正常工作的。
(3)一般错误
程序的功能运行基本正常,但是存在一些需求、设计或实现上的缺陷;次要功能运行不正常,通常有如下情况:
1、次要功能不能正常实现;
2、操作界面错误(包括数据窗口内列名定义、含义不一致);
3、打印内容、格式错误;
4、查询错误,数据错误显示;
5、简单的输入限制未放在前台进行控制;
6、删除操作未给出提示;
7、数据库表中有过多的空字段;
8、因错误操作迫使程序中断;
9、找不到规律的时好时坏;
10、数据库的表、业务规则、缺省值未加完整性等约束条件;
11、经过一段时间运行后,系统性能或响应时间会变慢;
12、重要资料,如密码未加密存放(包括配置文件中的密码),或其它存在安全性隐患的;
13、 硬件或通讯异常发生恢复后,系统不能自动正常继续工作(需要过多的人工干预才行);
14、系统兼容性差,与其它支持系统一起工作时容易出错,而没有充分理由说明是由支持系统引起的;或者由于使用了非常规技术或第三方组件造成不能使用自动化测试 工具进行测试的。
(4)优化建议
可以提高产品质量的建议,包括新需求和对需求的改进,以及程序在一些显示上不美观,不符合用户习惯,或者是一些文字的错误,通常有如下情况:
1、界面不规范;
2、辅助说明描述不清楚;
3、输入输出不规范;
4、长操作未给用户提示(或长操作结束后提示没有消失);
5、提示窗口文字未采用行业术语;
6、可输入区域和只读区域没有明显的区分标志;
7、界面存在文字错误;
8、在功能实现方式上如果需求中没有明确定义,而没有按常规实现,并且不比常规方式实现优越的;( 如用户名第一位用数字或特殊字符)
1.5缺陷产生原因
1、 产品需求问题:
需求不清晰或错误,导致设计目标偏离客户的需求,从而引起功能或产品特征上的缺陷;
2、 编码错误:
程序逻辑问题,包括对程序逻辑路径或数据范围的边界考虑不够周全,漏掉某些边界条件,造成容量或边界错误。
3、 需求变更:
4、 关联系统/模块影响分析不足
为考到上下游系统的或内部模块间的相互关联及影响造成的缺陷;
5、 第三方工具引起的问题
6、 新技术不熟悉:
新技术的采用,可能涉及技术或系统兼容的问题,事先没有考虑到。
7、 设计错误:
系统结构非常复杂,而又无法设计成一个很好的层次结构或组件结构,结果导致意想不到的问题或系统维护、扩充上的困难;即使设计成良好的面向对象的系统,由于对象、类太多,很难完成对各种对象、类相互作用的组合测试,而隐藏着一些参数传递、方法调用、对象状态变化等方面问题;
8、 环境问题:
系统运行环境复杂,包括硬件环境及软件外部依赖环境,依赖接口不稳定等因素造成的缺陷;
1.6缺陷类型
- 1. 功能遗漏:
未按需求文档实现,功能缺失
- 2. 程序逻辑错误
需要进行逻辑分析代码修改,如循环条件、计算顺序错误、逻辑顺序错误等;
- 3. 程序校验错误
- 4. 界面错误
前端页面排版、显示等交互问题;
- 5. 兼容问题:
服务端与前端兼容问题、软件间
- 6. 用户体验问题/优化提升
- 7. 接口问题
模块接口间调用问题,如参数问题
- 8.性能问题
不满足系统可测量的属性值,如、执行时间,事务处理速率等缺陷;
- 9. 安全问题
- 10.环境问题
由于设计、编译、运行环境引起的问题
2BUG的生命周期
1、测试人员在测试中发现BUG需要将其添加记录到JIRA中,并制定给对应的开发/产品人员进行处理。
2、开发人员修改好BUG后需要在注释框中填写说明信息,并将BUG的状态设为“已修正”状态,同时开发人员如果认为有的缺陷没有必要修改、无法重现、延期修改等,可将其设置为对应的“被拒绝”、“重复的”、“信息不足”、“无法重现”、“延期修改”等状态。
3、开发人员处理完毕BUG后需要测试人员对BUG进行验证,验证通过后就把其状态设置为“已关闭”状态,若验证不通过则把状态设置为“重现开启”状态。
4、对被置为‘被拒绝’状态的BUG,测试人员与开发人员协商后同意关闭,则置为‘已关闭’;若测试人员不同意关闭,则把BUG状态置为“重新开启” ,然后开发人员继续修改;若不用再修改则置为‘已关闭’;若延期处理则置为‘延迟修改’。
5、对被置为“信息不足”状态的BUG需要测试人员补全信息;然后重新开启让开发人员继续修复。
3BUG管理规范
合理的BUG流程管理有助于提高整个项目的效率与质量。BUG管理规范要求在BUG提交、BUG分配、BUG处理、BUG验证、BUG跟踪等环节都要进行规范。以下为各个环节的具体规范要求。
3.1BUG提交规范
BUG 描述的清楚与否,可以很好的帮助开发人员快速定位、解决问题,而且还可以提高测试人员基本测试技能。因此,建立标准的BUG描述规范是十分重要、也是十分必要的。
首先清晰的BUG 描述可以帮助开发人员快速定位、解决问题。软件测试部门中员工的水 平各有不一,对于 bug 的认知、描述侧重面也会存在不同。因此,如同一个问题,由不同测试人员描述 bug,就有可能会存在描述不一致的问题。这就会造成让开发人员理解不清晰,从而延误解决问题的周期。
其次标准的BUG描述可以提供测试人员的基本测试技能。如有新入职员工,他可以先从BUG库中查找BUG了解公司产品的整个开发、 研制中产生的问题。 而标准清晰的BUG描述可方便快速的使其尽早、尽快的融入我测试部门。另外,对于BUG的追踪验证时, 由于是不同测试人员进行验证,所以规范的BUG描述,可以提高测试人员验证问题的效率。
相关文章:
Bug管理规范
1BUG定义 1.1Bug状态 BUG状态标记BUG当前所处的状态,是用来处理BUG流程的主要参数,JIRA缺陷管理平台有以下一些状态: 新增(New):测试人员新发现的系统Bug; 打开(Open…...

剑指JUC原理-8.Java内存模型
👏作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家📕系列专栏:Spring源码、JUC源码🔥如果感觉博主的文章还不错的话,请👍三连支持&…...

Azure 机器学习 - 使用 AutoML 和 Python 训练物体检测模型
目录 一、Azure环境准备二、计算目标设置三、试验设置四、直观呈现输入数据五、上传数据并创建 MLTable六、配置物体检测试验适用于图像任务的自动超参数扫描 (AutoMode)适用于图像任务的手动超参数扫描作业限制 七、注册和部署模型获取最佳试用版注册模型配置联机终结点创建终…...

【深度学习】pytorch——快速入门
笔记为自我总结整理的学习笔记,若有错误欢迎指出哟~ pytorch快速入门 简介张量(Tensor)操作创建张量向量拷贝张量维度张量加法函数名后面带下划线 _ 的函数索引和切片Tensor和Numpy的数组之间的转换张量(tensor)与标量…...
git本地项目同时推送提交到github和gitee同步
git本地项目同时推送提交到github和gitee同步 同时推送到GitHub和Gitee(码云)可以通过设置多个远程仓库地址来实现。具体步骤如下: 一、分别推送 # 初始化仓库 git init# 添加远程仓库 git remote add gitee gitgitee.com:bealei/test.git…...
结构体数据类型使用的一些注意点
1.结构体定义时的注意事项: 1.错误定义结构体: struct students {char name[9] "Mike";int height 185; }; 这是不对的,在 C 语言中,这是由语言的设计原则所决定的。结构体的定义(struct declaration&…...
Serverless化云产品超40款 阿里云发布全球首款容器计算服务
10月31日,杭州云栖大会上,阿里云宣布推出全球首款容器计算服务ACS,大幅提升操作的易用性并节省20%资源成本,真正将Serverless理念大规模落地,同时阿里云 Serverless化进程进入快车道,有超40款云产品提供了S…...

最小化安装移动云大云操作系统--BCLinux-R8-U2-Server-x86_64-231017版
有个业务系统因为兼容性问题,需要安装el8.2的系统,因此对应安装国产环境下的BCLinuxR8U2系统来满足用户需求。BCLinux-R8-U2-Server是中国移动基于AnolisOS8.2深度定制的企业级X86服务器通用版操作系统。本文记录在DELL PowerEdge R720xd服务器上最小化安…...

索引创建的原则
索引的创建是数据库优化中非常重要的一部分,正确创建索引可以大大提高查询效率。以下是一些创建索引时需要考虑的原则: 根据查询频率创建索引: 频繁用于检索的列: 那些频繁用于查询的列或经常出现在 WHERE、JOIN、ORDER BY 和 GR…...

动态表单生成Demo(Vue+elment)
摘要:本文将介绍如何使用vue和elment ui组件库实现一个简单的动态表单生成的Demo。主要涉及两个.vue文件的书写,一个是动态表单生成的组件文件,一个是使用该动态表单生成的组件。 1.动态表单生成组件 这里仅集成了输入框、选择框、日期框三种…...

JMeter断言之JSON断言
JSON断言 若服务器返回的Response Body为JSON格式的数据,使用JSON断言来判断测试结果是较好的选择。 首先需要根据JSON Path从返回的JSON数据中提取需要判断的实际结果,再设置预期结果,两者进行比较得出断言结果。 下面首先介绍JSON与JSON…...
LuatOS-SOC接口文档(air780E)--mqtt - mqtt客户端
常量 常量 类型 解释 mqtt.STATE_DISCONNECT number mqtt 断开 mqtt.STATE_SCONNECT number mqtt socket连接中 mqtt.STATE_MQTT number mqtt socket已连接 mqtt连接中 mqtt.STATE_READY number mqtt mqtt已连接 mqttc:subscribe(topic, qos) 订阅主题 参数 …...

安装Python环境
Python 安装包下载地址:https://www.python.org/downloads/ 打开该链接,可以看到有两个版本的 Python,分别是 Python 3.x 和 Python 2.x,如下图所示: Python下载页面截图 图 1 Python 下载页面截图(包含…...

[nodejs] 爬虫加入并发限制并发实现痞客邦网页截图
今晚想给偶像的相册截个图,避免某一天网站挂了我想看看回忆都不行,用的是js的木偶师来爬虫台湾的部落格,效果图大概是这样,很不错 问题来了.我很贪心, 我想一次性把相册全爬了,也就是并发 ,这个人的相册有19个!!我一下子要开19个谷歌浏览器那个什么进程, 然后程序就崩了, 我就想…...

GEE——Publisher Data Catalogs发布者数据目录
发布者数据目录 发布者数据目录由数据集发布者策划,供更大范围的 Google 地球引擎社区使用,并作为地球引擎资产集公开共享。这些目录并非由 Google 编制。这里是GEE团队简政放权的一个过程,也就是说这些数据集的后续更新和维护并不由GEE团队负…...
计算10的阶乘
一、不好的写法 public static void main(String[] args) {long fun fun(10);System.out.println(fun);}public static long fun(long n) {if (n 1) {return 1;}return n * fun(n - 1);}使用递归完成需求,fun1方法会执行10次,并且第一次执行未完毕&…...
6.卷积神经网络
#pic_center R 1 R_1 R1 R 2 R^2 R2 目录 知识框架No.1 卷积层一、从全连接到卷积二、卷积层三、代码四、QA No.2 卷积层里的填充和步幅一、填充和步幅二、D2L代码注意点三、QA No.3 卷积层里的多输入和多输出通道一、多输入和多输出通道二、D2L代码注意点三、QA No.4 池化层…...
postgresql|数据库|SQL语句冲突的解决
前言: postgresql数据库是比较复杂的一个关系型数据库,而有些时候,即使是简单的插入更新操作也是有很多复杂的机制。 那么,什么是冲突?什么时候会遇到冲突(也就是冲突的常见场景)?…...

overflow溢出属性、定位、前端基础之JavaScript
overflow溢出属性 值 描述 visible 默认值。内容不会被修剪,会呈现在元素框之外。 hidden 内容会被修剪,并且其余内容是不可见的。 scroll 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。 auto 如果内容被修剪࿰…...
【JS】Chapter6-Dom 获取属性操作
站在巨人的肩膀上 黑马程序员前端JavaScript入门到精通全套视频教程,javascript核心进阶ES6语法、API、js高级等基础知识和实战教程 (六)Dom 获取&属性操作 以下的变量可以将 let 改为 const: let arr [red, green] arr.pu…...

龙虎榜——20250610
上证指数放量收阴线,个股多数下跌,盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型,指数短线有调整的需求,大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的:御银股份、雄帝科技 驱动…...
Mobile ALOHA全身模仿学习
一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...

Kafka入门-生产者
生产者 生产者发送流程: 延迟时间为0ms时,也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于:异步发送不需要等待结果,同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...

计算机基础知识解析:从应用到架构的全面拆解
目录 前言 1、 计算机的应用领域:无处不在的数字助手 2、 计算机的进化史:从算盘到量子计算 3、计算机的分类:不止 “台式机和笔记本” 4、计算机的组件:硬件与软件的协同 4.1 硬件:五大核心部件 4.2 软件&#…...

R 语言科研绘图第 55 期 --- 网络图-聚类
在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...
Python网页自动化Selenium中文文档
1. 安装 1.1. 安装 Selenium Python bindings 提供了一个简单的API,让你使用Selenium WebDriver来编写功能/校验测试。 通过Selenium Python的API,你可以非常直观的使用Selenium WebDriver的所有功能。 Selenium Python bindings 使用非常简洁方便的A…...

【java面试】微服务篇
【java面试】微服务篇 一、总体框架二、Springcloud(一)Springcloud五大组件(二)服务注册和发现1、Eureka2、Nacos (三)负载均衡1、Ribbon负载均衡流程2、Ribbon负载均衡策略3、自定义负载均衡策略4、总结 …...

CMS内容管理系统的设计与实现:多站点模式的实现
在一套内容管理系统中,其实有很多站点,比如企业门户网站,产品手册,知识帮助手册等,因此会需要多个站点,甚至PC、mobile、ipad各有一个站点。 每个站点关联的有站点所在目录及所属的域名。 一、站点表设计…...

Android Framework预装traceroute执行文件到system/bin下
文章目录 Android SDK中寻找traceroute代码内置traceroute到SDK中traceroute参数说明-I 参数(使用 ICMP Echo 请求)-T 参数(使用 TCP SYN 包) 相关文章 Android SDK中寻找traceroute代码 设备使用的是Android 11,在/s…...