天天被开发怼?4个方法区分bug前后端归属,我再也不背锅了!

news2024/11/28 10:40:13

“开发都这么不友善吗?”

有朋友跟我说,刚上岗经常分不清bug是前端还是后端,一直需要开发帮忙重新指派,甚至还会被开发拿来吐槽....

 

其实不是开发态度不好,而是对于前后端分离的应用,既需要进行功能测试,还需要进行接口测试,并且在进行功能测试是还需要分析bug是前端还是后端的问题。

测试掌握bug的归属问题,就像时下要求掌握‘垃圾分类‘一样,经过bug分类管理,整个团队的效率都会有所提高。

今天就着这个朋友的吐槽,来跟大家分享一些区分前后端BUG的技能,来帮助大家快速定位bug的归属问题。

1、前后端bug特征

前端主要负责显示数据,后端主要负责处理数据、存储数据,前后端通过接口进行数据的交换

前端bug的特征:

界面显示类问题:如文字大小不一、控件颜色不搭、控件不整齐、静态文字错误等界面展示不友好类问题

页面布局类问题:如文字排版没有统一、行间距太小、重叠、显示不全等

交互类问题:如没有点击、拖拽事件等基本都是JS的问题

兼容性问题:不同环境下(如不同浏览器,不同配置手机)的界面显示类问题和页面布局类问题


后端bug的特征:

业务逻辑类问题:如正确的用户名和密码无法登录,支付后扣款成功,但是显示支付失败等

数据类问题:如新增成功的数据没有显示等

性能类问题:如页面、表单打开缓慢,提交表单一直显示提交中等

安全类问题:如越权、sql注入等

2、判断前后端bug方法

分析日志

当我们发现一个bug时,可以在复现bug时抓取后端服务日志,并查看分析后端服务的日志。

如果日志中没有相关信息,基本可以认为是前端bug,因为这个bug跟后端没有交互,所以才没有相关日志输入。

反之如果日志有相关信息输出,可以进一步查看是否有错误日志信息,进一步分析,如果明确有报错信息,则基本断定为后端bug,可以将日志和bug一并提交给开发。


抓包工具+报文分析
当我们发现一个bug时,可以在复现bug时可以通过F12、Fiddler抓包前后端交互的报文并进行分析:

报文中如果前端没有发出请求,就是前端bug。

报文中前端发出了请求,但是请求的参数有错误,也是前端bug

报文中前端发出了请求,参数没有问题,后端没有响应,没有数据,就是后端bug

报文中前端发出了请求,参数没有问题,后端返回数据有问题(返回数据错误),就是后端bug

报文中后端返回了且数据也是正确的,但是前端界面没有正确显示,那就是前端bug

数据库分析
了解所测功能的数据表结构,测试过程中,查看数据库的数据,确认数据的正确性。


比如:在注册成功,但是登录时(数据正确)提示登录失败,这时我们可以通过查询数据库的数据来确认。

首先查询用户表中没有插入注册成功的数据,如果没有数据则是后端bug;

如果插入数据成功,那就要结合抓包工具+报文分析的方法来进一步确认。


经验法
经验法就只能是慢慢积累了,负责的项目多了,自然对功能的实现过程有了解,也就明白如何分类bug了,当然也要在平常的工作和实践中总结。

另外,多和开发人员沟通,有助于了解具体的业务模块,再加上自己对业务足够熟悉,也会更加容易判断bug的归属了。

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

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

相关文章

什么是网络安全?如何让普通人简单的了解网络安全

一、介绍网络安全 可以介绍一下河南郑州的网络安全科技馆。网络安全科技馆设置个人安全、政企安全、社会安全、综合竞技四个主展区,帮大家普及网络安全知识。首先,可以从个人安全展区开始游览,了解我们身边的网络安全,原来网络安…

调幅波解调-二极管峰值包络检波器【Multisim】【高频电子线路】

目录 一、实验目的与要求 二、实验仪器 三、实验内容与测试结果 1.观测输入、输出波形,估算检波效率(D1接法不同,分别观测) 2.观察惰性失真波形(C1100nF,其他参数保持不变) 3.观测负峰切割失真(ma0.8&#xff0c…

【目标检测实验系列】AutoDL线上GPU服务器租用流程以及如何用Pycharm软件远程连接服务器进行模型训练 (以Pycharm远程训练Yolov5项目为例子 超详细)

目录 1. 文章主要内容2. 租用AutoDL服务器详细教程2.1 注册AutoDL账号,并申请学生认证(学生认证有优惠,如果不是学生可以忽略此点)2.2 算力市场选择GPU,并选择初始化配置环境2.3 控制台参数解析,并使用相关参数登录Xftp(Windows与…

Spring Boot如何实现OAuth2授权?

Spring Boot如何实现OAuth2授权? OAuth2是一种授权框架,用于授权第三方应用程序访问受保护的资源。在Web应用程序中,OAuth2通常用于授权用户访问受保护的API。 在本文中,我们将介绍如何使用Spring Boot实现OAuth2授权。我们将使…

5-python的Number类型

内容提要 主要介绍python中的Number类型: python的类型转换,oct()、hex()、bin()函数的使用。 python的整数表示:十进制、二进制、八进制、十六进制。(*,0b,0o,0x) python中ASCII码…

springboot+java+ssm教材管理系统87k61

教材管理系统,主要的模块包括查看主页、个人中心、教师管理、学生管理、教材分类管理、教材信息管理、个体预订管理、取消预订管理、集体预订管理、集体取消管理、系统管理等功能。系统中管理员主要是为了安全有效地存储和管理各类信息,还可以对系统进行…

开发微信公众号本地调试【内网穿透】

文章目录 前言1. 配置本地服务器2. 内网穿透2.1 下载安装cpolar内网穿透2.2 创建隧道 3. 测试公网访问4. 固定域名4.1 保留一个二级子域名4.2 配置二级子域名 5. 使用固定二级子域名进行微信开发 转载自cpolar内网穿透的文章:微信公众号开发:对接本地开发…

【QT】windows下OpenSSL的使用

设计需求 在QT端实现对字符串的加密与解密 OpenSSL下载教程 本人采用 Win64OpenSSL-1_1_1t.msi,百度网盘下载链接 链接:https://pan.baidu.com/s/1vg4s_1JmCpa68TMc1F2gMw 提取码:u4js OpenSSL安装参考链接 OpenSSL使用的参考链接 OpenSS使用…

onceperrequestfilter 和 webmvcconfigurer 区别

概述 在使用Spring框架进行Web开发的时候,我们经常会遇到需要对每个请求做一些统一的处理的情况。例如,我们可能需要在每个请求到达Controller之前进行身份验证,或者在每个请求结束后记录请求的日志信息。这时候,我们可以使用两种不同的方式来实现这些功能:onceperreques…

一款免费无广、简单易用的安全软件:火绒安全软件

名人说:往者不可谏,来者犹可追。——语出《论语微子篇》 Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) o(‐^▽^‐)o很高兴你打开了这篇博客,跟着步骤一步步尝试安装吧。✧ 目录…

Linux-基础篇:虚拟机环境搭建

目录 1、linux介绍 2、安装vm和centos 2.1、vmware下载 2.2、Centos 下载地址 3、虚拟机三种网络连接方式 3.1、桥接模式 3.2、NAT模式 3.3、主机模式 4、虚拟机克隆 5、虚拟机快照 6、虚拟机迁移和删除 7、安装vmtools 7.1、vmtools作用 7.2、安装vmtools步骤 …

django+vue+python 协同用过滤电商推荐系统w58n0

现在人们足不出户就可以购物,聊天,消费,我们的生活越来越智能,越来越人性化,随之而来的就是让它更懂你,给你推荐你可能喜欢的东西,这样你就不必再费力去找你喜欢的东西,既节约了你的…

博客系统前端页面代码实现及页面展示(代码版)

hi,大家好,今天为大家带来博客系统的前端代码及页面展示 我们使用VS code 这个编码工具来编写代码 博客系统前端页面分为四个部分 1.博客列表页 2.博客编辑页 3.博客登录页 4.博客详情页 &#x1f367;1.博客列表页 <!DOCTYPE html> <html lang"en"&…

关于linux的ssh(出现的问题以及ubuntu的ssh配置)

目录 Ubuntu进行ssh连接 关于ssh报错排错 备注&#xff1a;防火墙和selinux可能对ssh连接存在限制&#xff0c;但是我在操作的时候并没对我照成影响 查看selinux状态 ssh_config和sshd_config的区别 Ubuntu进行ssh连接 1.首先需要安装SSH服务器&#xff0c;在ubuntu终端输…

强化学习与ChatGPT:快速让AI学会玩贪食蛇游戏!

大家好&#xff0c;我是千寻哥&#xff0c;现在自动驾驶很火热&#xff0c;其实自动驾驶是一个很大的概念&#xff0c;主要涉及的领域包括强化学习以及计算机视觉。 今天给各位讲讲强化学习的入门知识&#xff0c;并且手把手和大家一起做一个强化学习的Demo。 一、 浅谈强化学习…

基于SSM的酒店客房管理系统

✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取项目下载方式&#x1f345; 一、项目背景介绍&#xff1a; 酒店管理系统是一款高…

Java 集合 - 集合框架概述

文章目录 1.集合框架体系结构2.Collection 接口2.1 Iterator2.1.1 使用迭代器遍历集合2.1.2 使用迭代器删除集合元素2.1.3 Iterator 迭代器的 fail-fast 机制 2.2 Iterable2.3 List 集合2.4 Set 集合2.5 Queue 3.Map 集合 Java 集合框架&#xff08;Java Collections Framework…

Java 集合 - Set 接口

文章目录 1.概述2.HashSet3.LinkedHashSet4.TreeSet5.选择合适的 Set 实现6.总结 1.概述 Set 接口的定义非常简单。它本质上是一个 Collection&#xff0c;但是要求该集合不能有重复的元素。换句话说&#xff0c;如果尝试将一个元素添加到 Set 中&#xff0c;而该元素已经存在…

FPGA实现ESP8266驱动且进行数据包收发

一. 简介 本次将使用正点原子的ESP8266 WIFI模块&#xff0c;来实现PC与FPGA之间的TCP通讯&#xff0c;其中ESP8266与FPGA之间的接口是UART。 二. 正点原子的ESP8266 WIFI模块介绍 模块实物图如下&#xff0c;到手就可以使用了&#xff0c;RST和IO_0两个IO口不接或者接高电平…

C++布隆过滤器和哈西切分

文章目录 一、布隆过滤器的提出二、布隆过滤器的概念三、布隆过滤器的实现布隆过滤器的插入布隆过滤器的判断在不在布隆过滤器的删除布隆过滤器的优点布隆过滤器的缺点 四、布隆过滤器的应用场景五、布隆过滤器的扩展[面试题]六、哈西切分 一、布隆过滤器的提出 我们在使用新闻…