遇到BUG怎么分析,全方位带你分析

news2024/12/22 20:47:45

软件测试的目的是尽可能早地找出软件产品中潜藏的缺陷,并确保其得以修复。所以缺陷的分析就会变得很关键,那么如何来分析缺陷呢?

根据缺陷的定义描述准则:

所有不满足需求或超出需求的都是缺陷。缺陷的判定主要的依赖点在于产品需求说明书,它主要说明了软件要具备的功能(或者不具备的功能),它对开发的产品进行定义,给出产品的细节,如何做,做什么,不能做什么。对于BUG的分析,可以从以下角度来进行考虑:

1.缺陷类型:

根据缺陷的自然属性划分的缺陷种类,比如:功能缺陷,UI界面缺陷,文档缺陷,代码缺陷,设计缺陷,性能缺陷等...

2.缺陷严重程度:

因缺陷引起的故障对软件产品的影响程度,一般可以分为四个方面:

致命(Fatal):

主要功能完全丧失,用户数据遭到破坏,死机,崩溃,闪退且不能恢复,甚至危及人身安全(S1);

严重:

主要功能部分丧失,系统的次要功能完全丧失,软件闪退但是重启后可以恢复,数据不能保存(S2);

一般:

系统的次要功能部分丧失,但是不影响用户的使用,提示信息不准确,等待时间长,界面差(S3);

较小(建议型缺陷):

使用不方便,错别字,排版重叠不合理(S4)

3.缺陷优先级:缺陷必须被修复的紧急程度,一般可分为:

立即解决(P1):

该缺陷导致系统的主要流程走不通,测试工作无法进行,需要开发立刻修复;

高优先级(P2):

缺陷严重,影响测试,需要优先考虑修复;正常排队(P3):提交的缺陷按照顺序等待开发进行修复;

低优先级(P4):

提交的缺陷等开发有时间再进行修复

4.缺陷状态:

缺陷通过一个跟踪修复过程的进展情况,从公司常见的缺陷管理工具中,我们能够获取到缺陷状态可以有:

激活或打开:

指的是缺陷提交以后,公开给开发以及相关的人员看到;

已修复或已修正:

开发人员认可了缺陷,并按照缺陷的描述在代码中修复了该问题(测试人员还没有进行确认验证的操作);

关闭:

开发人员修复完成后,经过测试人员的验证,并通过,就可以把状态改为关闭;

重新打开:

开发人员修复后,测试人员进行验证,验证不通过,缺陷还存在,就要把缺陷的状态更新为打开;

推迟修复:

指的是该缺陷在当前版本不进行修复,放在下一个版本中进行修复,必须要有相关的负责人确认才可以,不能关闭,持续跟踪;

保留:

缺陷是第三方的问题,开发也是没有权限进行修复,缺陷一直保留在缺陷库中,等待第三方开发者授权或者帮助修复;

不能复现:

开发按照测试人员提供的复现步骤,不能重现该缺陷,原因可能是测试人员提交的缺陷描述或者复现步骤不清楚,相关的素材条件不完善;

我们可以提供一些截图(缺陷的截图),甚至可以录制一些demo视频,日志文件(记录一些报错的信息),作为有力的证据帮助开发进行复现;

重复:

指的是同一个缺陷被多个测试人员所提交。对于重复的缺陷进行删除或者合并;

不是缺陷:

不是软件缺陷,直接删除。

5.缺陷起源:

缺陷引起的故障或事件第一次被检测到的阶段,比如是在需求阶段,架构设计阶段,编码阶段,测试阶段或者用户使用阶段等

6.缺陷来源:

指缺陷的起因,是因为需求说明书,概要设计,详细设计,接口文档,还是数据库,代码等问题引起的。

所以,在实际软件应用中,没有不存在缺陷的软件,只有迄今为止尚未发现的缺陷。软件测试是保障软件质量管理体系中一个非常重要的手段。作为测试从业者,应在工作中尽早和不断发现软件中潜藏的缺陷,避免软件发布后由于潜在的软件错误和缺陷造成的隐患所带来的商业风险。

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走! 希望能帮助到你!【100%无套路免费领取】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2056462.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

配置oss cdn加速静态资源访问 阿里云

效果对比 配置cdn下载速度对比 步骤 1: 登录阿里云控制台控制台主页,找到并点击“对象存储 OSS” 创建存储空间(Bucket) 设置权限 步骤 2: 获取外网访问地址 步骤 3 在 CDN 中使用该地址 复制该外网访问地址 打开全站加速 DCDN/域名管理 添…

【LeetCode热题100】双指针

class Solution { public:void moveZeroes(vector<int>& nums) {int dst -1,cur 0;while(cur<nums.size()){if(nums[cur] 0){cur;}else{swap(nums[dst1],nums[cur]);cur;dst;}}} }; 题目分析&#xff1a;对于数组分块/数组划分的问题&#xff0c;我们可以使用双…

Jmeter请求发送加密参数详解

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 最近在做http加密接口&#xff0c;请求头的uid参数及body的请求json参数都经过加密再发送请求&#xff0c;加密方式为&#xff1a;ase256。所以&#xff0c;jmeter…

社区志愿者服务系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言具体实现截图详细视频演示技术栈系统测试为什么选择我官方认证玩家&#xff0c;服务很多代码文档&#xff0c;百分百好评&#xff0c;战绩可查&#xff01;&#xff01;入职于互联网大厂&#xff0c;可以交流&#xff0c;共同进步。有保障的售后 代码参考数据库参…

【AI落地应用实战】Amazon SageMaker JumpStart 体验零一万物的 Yi 1.5 模型

目录 一、前言1.1、Amazon SageMaker JumpStart1.2、Yi-1.5 9B Chat 模型 二、Yi 1.5实践流程2.1、准备SageMaker Studio环境2.2、部署Yi-1.5-9B模型2.3、运行推理Yi-1.5-9B模型 三、体验总结 中国大模型公司零一万物发布开源大模型Yi-1.5&#xff0c;包含多个版本。同时发布多…

YOLOv8轻量化改进之slimneck

目录 一、原理 二、代码 三、修改到YOLOv8中 四、yaml文件修改 一、原理 论文地址:2206.02424 (arxiv.org) 主要模块的网络结构 二、代码 slimneck的代码如下,slimneck主要由GSConv和VoVGSCSPC两部分组成。 class GSConv(nn.Module):# GSConv https://github.com/Alan…

分布式高可用架构设计

一、限流 1、单机限流 如图&#xff0c;应用C的资源c/x被上游的应用A和应用C并发访问&#xff0c;应用C的系统能力支持c/x资源最高5000/qps的访问量&#xff1b;为了不让高并发流量或尖峰流量压垮应用C&#xff0c;可以针对应用C的资源c/x做限流&#xff1b;比如设置限流4500…

为什么会有浮毛猫毛?这些不容忽视的危害宠物空气净化器能解决!

很多人看到朋友家可爱的猫猫狗狗&#xff0c;自己也心痒痒想要养一只。但一想到宠物可能会带来的掉毛、体臭等问题&#xff0c;又犹豫不决。诚然&#xff0c;养宠物确实会对室内空气造成一定影响&#xff0c;但养宠人的共识是&#xff1a;那份与宠物共度的快乐时光&#xff0c;…

mysql索引探索

《令人困惑的mysql索引》在这篇文章中&#xff0c;遗留了几个困惑。为了解决这些困惑&#xff0c;我又进行了一些测试。 本文中索引的建立&#xff0c;并不一定科学&#xff0c;查询的SQL也不一定科学&#xff0c;只是为了理解mysql索引建的一些测试数据。 CREATE TABLE cms_…

加密与安全_双向RSA+AES加密及Code实现

文章目录 AES / RSA流程Code生成AES密钥 和 生成RSA密钥对AES工具类&#xff0c;提供AES加密和解密功能RSA加密工具类测试类 总结 AES / RSA AES&#xff1a;一种对称加密算法&#xff0c;意味着加密和解密使用相同的密钥。速度快&#xff0c;适合加密大量数据。RSA&#xff1…

Tina-Linux Bootloaer简述

Tina-Linux Bootloaer简述 目录介绍 ubuntuubuntu1804:~/tina-v2.0-sdk/lichee/brandy-2.0$ tree -L 1 . ├── build.sh ├── opensbi ├── spl //boot0 ├── spl-pub //boot0 ├── tools └── u-boot-2018 /ubootTina-Linux 启动流程简述

ant design pro v6 如何做好角色管理

先上图&#xff1a; 整个角色管理是如何做的吗&#xff1f; 首先你要处理后端&#xff0c;要先把角色存到用户那。 这是用户管理部分的内容&#xff1a; 可以看到一个用户是有多个角色的。 看到没有&#xff0c;存的是数组 数组的是一个 role 对象 role 对象是这样&#xf…

reactive 和 ref 的区别和联系

在 Vue3 的组合式 API &#xff08;Composition API&#xff09;中&#xff0c;ref 和 reactive 是用于创建响应式数据的两个核心函数。尽管二者都用于实现响应式数据&#xff0c;但在使用方式和适用场景上存在一些区别。 1. 基本概念 1.1 ref 用途&#xff1a;用于定义 基本…

深入探讨视频美颜SDK:直播美颜工具的核心技术与实现

本篇文章&#xff0c;笔者将深入探讨视频美颜SDK的核心技术及其在直播美颜工具中的实现。 一、视频美颜SDK的核心技术 视频美颜SDK通过一系列复杂的算法和技术&#xff0c;实时处理视频流并应用各种美颜效果。这些核心技术主要包括以下几个方面&#xff1a; 1.人脸识别与追踪…

【Hot100】LeetCode—24. 两两交换链表中的节点

目录 1- 思路四指针 2- 实现⭐24. 两两交换链表中的节点——题解思路 3- ACM 实现 原题连接&#xff1a;24. 两两交换链表中的节点 1- 思路 四指针 定义 dummyHead&#xff1a;便于处理头结点① cur 指针&#xff0c;记录两个交换节点的前 前一个结点② 第一个指针 first③ 第…

嵌入式开发--STM32G030C8T6,写片上FLASH死机CFGBSY和写入出错

故障现象1 G0系列&#xff0c;写片上FLASH时&#xff0c;经常死机&#xff0c;而且按复位键都没用&#xff0c;属于不断电都救不回来的那种死法。这种情况一般是由硬件置位了某个标志导致&#xff0c;只有断电才能故障复原。 故障查找 检查FLASH的相关寄存器&#xff0c;发现…

【秋招笔试】8.18大疆秋招(第一套)-后端岗

🍭 大家好这里是 春秋招笔试突围,一起备战大厂笔试 💻 ACM金牌团队🏅️ | 多次AK大厂笔试 | 编程一对一辅导 ✨ 本系列打算持续跟新 春秋招笔试题 👏 感谢大家的订阅➕ 和 喜欢💗 和 手里的小花花🌸 ✨ 笔试合集传送们 -> 🧷春秋招笔试合集 🍒 本专栏已收…

树莓派Pico C/C++ 开发环境搭建(一键完成版)

树莓派Pico C/C 开发环境搭建(一键完成版) 因为之前使用过MicroPython开发过树莓派Pico&#xff0c;总觉得用起来怪怪的。正好最近树莓怕发布了新一代的MCU——RP2350&#xff0c;之前的RP2040在各个平台都有所降价&#xff0c;因此&#xff0c;买了几块。同时因为之前是玩stm…

【系统架构设计】系统分析与设计方法

【系统架构设计】系统分析与设计方法 定义问题与归结模型问题分析因果鱼骨图 帕累托图上下文范围图 问题定义 需求分析与软件设计结构化分析与设计结构化分析DFD数据字典技术 结构化设计结构图程序流程图和盒图 模块设计 面向对象的分析与设计用户界面设计 定义问题与归结模型…

Eureka 原理与实践全攻略

一、Eureka 概述 Eureka 在微服务架构中具有举足轻重的地位。它作为服务注册与发现的核心组件&#xff0c;为分布式系统中的服务管理提供了关键支持。 Eureka 的主要功能包括服务注册、服务发现、服务健康监测和自我保护机制。服务注册功能使得服务提供者能够在启动时将自身的…