(我的公众号“墨石测试攻略”,关注可免费获取整套接口测试实战项目!)

有的BUG看一眼就知道是前端还是后端的,而有些BUG则需要借助抓包工具(Fiddler、Charlers、浏览器的F12等)、日志进行分析了。

一般界面上的像错别字/字体大小、按钮显示、输入框超出边界等问题,不要犹豫、不要徘徊,肯定是前端问题;

界面报404的八成是前端写错了请求地址,指给前端开发;报500的,一般是后端问题,指给后端开发。


还有些问题,不太好判断的,可以用抓包工具来进行分析。

举例:一个查询接口,输入查询条件后,界面上没有数据展示出来。如何去分析这个问题呢?

首先,确保数据库里有符合条件的数据。

然后,可以使用工具Fiddler抓包,总结下来,就是三步走策略:

找到对应的请求包→看请求信息→看响应结果。

一、找到对应的请求包

怎么抓到目的包,也就是问题对应的包?
建议先停止抓包,并清除之前的记录,然后在客户端进行操作,这样Fiddler上抓到的基本上是当前操作的记录,然后再对抓包数据进行分析。

二、看请求信息

从上图可以看出,请求方式是POST,POST的信息分四部分,请求行、请求头、空一行、Body(GET请求是没有Body的)。Raw存放的是原始数据,其他的项是分析请求中的某一种数据。

/抓包分析:

对照接口文档,看对应的接口有没有触发请求,如果没有请求(没有调用接口)或请求有问题,那就是前端的BUG。

三、看响应结果

HTTP响应主要由状态行、消息报头、响应正文(和消息报头之间空一行)组成。

/抓包分析:

如果前端请求没问题,那么看响应。

先看响应的状态码,如果返回报错,看报错的状态码是什么,然后进行原因排查(参考公号“墨石测试攻略”中的这篇文章《接口测试常见的状态码》);如果状态码为200,表示响应成功了,要具体分析后端返回的报文。

根据接口文档,看前端传参是否正确,如果是前端传参不对导致后端返回错误,那就是前端问题;如果传参正确,后端处理不正确,那可能就是后端问题。

如果后端响应了且数据和接口文档一致,那就是前端展示的问题。

总结:按前端→后端→前端的顺序进行分析。

类似的问题:比如一个登录界面,输入用户名密码后点击【登录】发现无响应怎么回事;一个支付功能,支付成功后在我的订单里却没有显示;打开一个网页,显示空白怎么回事等等,都可以按上述进行分析。


还有些问题,可以借助系统日志(Log)来分析。

为什么会有日志这种东东?一般为了便于查找、分析问题,开发人员会写很多日志来记录系统运行过程中的错误、异常或者系统处理过的事件。

我之前就遇到过这样一个问题:A系统对接B系统做数据同步,但是到达同步时间后,数据并没有同步过来。

我通过数据库查询到B系统中要同步的数据已经放到同步队列中了。然后我去查询了同步日志,日志记录了每一笔要同步的数据信息,发现有一笔数据一个字段的长度超限了,那么这笔数据肯定是无法同步过来的,但是理论上不应影响后面数据的同步。

原来是后端的代码错误地加了顺序的判断,导致了这个问题。

问题解决了,不仅定位到了BUG,也帮助开发分析了BUG的原因。

现在很多公司都将产品部署到Linux系统,小伙伴们要熟悉Linux常用的命令,学会用tail等命令去查询日志。

(我的公众号“墨石测试攻略”,关注可免费获取整套接口测试实战项目!)

如何判断BUG是属于前端还是后端(抓包/日志定位分析)相关推荐

  1. 软件测试如何定位分析bug?

    你好,我是小牛. 软件测试日常工作中,每天可能都会遇到不同的问题和bug,有些刚入行的测试喜欢不加分析就直接甩给开发去解决.开发比较闲还好,如果手头工作比较多,就容易烦.甚至有可能是后端的问题,但是你 ...

  2. 如何判断BUG是前端BUG还是后端BUG

    一般像界面上的错别字.字体大小.控件显示.输入框超出边界.字符被截断.字符重叠等问题,不要犹豫.不要徘徊,肯定是前端问题. 界面报404的八成是前端写错了请求地址,指给前端开发:报500的,一般是后端 ...

  3. 判断bug属于前端还是后端

    发现和报告bug是测试工程师的日常工作中的重要内容,快速有效地判断bug属于前(后)端,甚至定位到bug源码所在,便于开发人员迅速完善代码,使得项目流程进行得更加顺畅,周期缩短.虽然工作忙的时候可能没 ...

  4. web前端与后端的区别

    要了解web前后端的区别,首先必须得清楚什么是web前端和web后端. 首先:web的本意是蜘蛛网和网的意思,在网页设计中我们称为网页的意思.现广泛译作网络.互联网等技术领域.表现为三种形式,即超文本 ...

  5. 如何在家自学前端后端基础?路线是什么?前端程序员到底干什么?学了C语言然后呢?到底是选前端还是后端?

    文章目录 走向程序员的第一步:选择前端还是后端? 选择前端如何学习? 学习路线流程图 详细介绍学习路线 走向程序员的第一步:选择前端还是后端? 或许是因为学了C语言或者其他语言之后不知道如何学习? 或 ...

  6. python的前端和后端_python前端和后端数据交互,tornado框架入门,初学小试牛刀!...

    Python前端和后端是如何交互的,怎么用tornado框架快速搭建前端和后端数据交互? 前端与后端的数据交互,最常用的就是GET.POST,比较常用的用法是:提交表单数据到后端,后端返回json 前 ...

  7. 前端人必须掌握的抓包技能(原理到实践)

    https://juejin.cn/post/7140040425129115684 作者:jecyu 1. 前言 时隔 3 年,重新接触了移动端 h5 页面开发,上一次还是大四实习.这一次是 hyb ...

  8. webstorm前端调用后端接口_软件测试面试题:怎么去判断一个bug是前端问题还是后端问题...

    大家好,在软件测试面试过程中,经常有面试官问到这个问题,那我们应该如何回答才好呢?少废话,直接看答案: 答案: 在页面上发现bug之后,要想判断这个问题属于后端还是前端,我就需要来判断这个页面背后调用 ...

  9. 软件测试-判断是属于前端还是后端BUG

    前端问题 点击弹出这种操作都是前端问题 没有请求接口跟数据没得太大关系的大部分是前端的,但是也不一定 一般是快速连续点击多次按钮会请求多次,这个是前端的,喊他限制一哈 有模块选中了,却没有的状态颜色标 ...

最新文章

  1. java phantomjd linux_linux安装phantomjs
  2. 用Python进行机器学习(附代码、学习资源)
  3. node-OSDomainNetPath
  4. flink dataset api使用及原理
  5. python excel库 linux_用python写一个简单的excel表格获取当时的linux系统信息
  6. 【全】.net core平台单元/集成测试结果、覆盖率、圈复杂度到可视化HTML报告之路...
  7. 研究者展示黑客通过GPU绕过防毒软件查杀的方法
  8. mysql什么是覆盖索引,MySQL中的覆盖索引
  9. caffe dataset
  10. Jersey框架一:Jersey RESTful WebService框架简介
  11. 2019华为软件精英挑战赛总结篇
  12. 校内题目T2691 桶哥的问题——送桶
  13. [ZZ]什么是Google Urchin:了解Urchin与Google Analytics差异
  14. 管理团队需要的能力和技术
  15. 什么是对象、什么是面对对象?
  16. 关于BatchNorm的理解与讨论
  17. AtCoder ABC161 D Lunlun Number
  18. Date日期格式转换
  19. 证券公司信息化2-投资银行业务是做什么的,怎样赚钱,IT在里边起到什么作用?
  20. private static final long serialVersionUID = 1L详解

热门文章

  1. 模块RLM01 DCS冗余链路模块3BDZ000398R1
  2. 温度记录仪软件测试,温度分布测试规范
  3. 基于SVM的近红外光谱建模
  4. 初级会计实务--第四章第二节、资本公积
  5. [全程建模]全程建模方法被乱介绍的高校培训
  6. 手机背光检测设备,三菱5U程序案例,4轴伺服控制,串口通讯,成熟项目案例
  7. USB虚拟串口实验_STM32F1开发指南——USB学习笔记
  8. 技术分享|Flow接入节点(Access node)重构介绍
  9. 如何翻译视频里的语言?这篇文章告诉你
  10. 拉格朗日乘子法、罚函数法、乘子罚函数法