zoukankan      html  css  js  c++  java
  • 如何定位前端还是后台的bug

    先需要了解一个页面的请求过程:

    前端:客户看到的页面展示等.

    后台(后端):主要负责业务相关功能,简单说就是提供数据支持的数据库等

    以http请求为例:

      1、用户在前端页面操作,如点击某个提交按钮

      2、页面携带数据进行请求,访问具体功能接口

      3、由后端服务执行相应的业务逻辑,如涉及数据,再去请求并组装数据返给前端

      4、前端页面进行渲染和展示对应的页面和数据

    前后端bug各有什么特点?

      前端bug特点 1, 界面相关 2,布局相关 3,兼容性相关

      后端bug特点 1,业务逻辑相关 2,性能相关 3,数据相关 4,安全性相关

    web端如何定位前端还是后台bug?

      按下F12,前后端分离的项目,通过ajax向后端请求数据,如果后端返回的数据有问题,那么问题就是后端,

      如果返回的数据没有问题,但是展示结果异常那么问题一般就出在前端。

      如果前端已经把数据发送给了后端,后端接到请求,而后端没有返回数据请求,则是后端出了问题;

      如果前端在用户输入数据后,发送的请求没有带数据,则是前端的问题,或者后台已经传回了数据,但在前端显示不出来,这是前端问题。


    APP端如何定位前端还是后台bug?
      先用抓包工具确定服务器接口返回的数据是否正确,这样就可以排除是否是服务器的问题,如果返回的是服务器报错那么就是服务器原因,

      如果返回的数据与接口文档不符那么就是接口问题,最后就是客户端问题。

     3、查接口 

      这种方法常用于查看是后端返回给前端的数据有误,还是前端显示有误。 大多数浏览器都有自带的接口查看工具,如Chrome,FireFox等都可以通过F12开启抓包,

      在NetWork中可以看到当前页面发送的每个http请求。 我们需要对比通过后端接口拿到的数据和前端显示的数据,来确认问题出在哪里。如果数据错了,页面显示是错的,也是正常的,先从后端入手去解决。

      还可以分析控制台中js是否有错误,network中状态码是否有问题,如果是500等说明服务端有问题。

      比如登录页面,输入账号和密码点击登录,结果没有跳转也没有反应

      可以打开控制台,看是否有js错误,如果有就是前端问题,没有且有正常post请求再看network状态码,如果是404有可能是前端参数写错或者后台接口改了,前后端都可以提,500就是后台出了问题。

    ①.请求接口URL是否正确

    如果请求的接口URL错误,为前端的bug

    ②.传参是否正确

    HTTP请求中的参数是否正确,如果HTTP请求中的参数不正确,为前端bug

    ③.响应内容是否正确

    请求接口URL和传参都正确,如果响应内容不正确,则为后端bug

    ④.也可以在浏览器控制台输入js代码调试进行分析

    如果定位为后端的bug,如何精确定位是哪里出了bug呢?

    1.查看报错日志,通过日志分析问题点

    2.查看数据库确认数据的正确性

    3.查看缓存是否正确

  • 相关阅读:
    犀牛书学习笔记(2):对象和数组
    犀牛书学习笔记(1):语法结构、数据类型和值、表达式和运算符
    小学了一下css hack
    git学习系列--六分之一
    稍览了一下CommonJS
    意识流_六分之一
    两升的心思系列之-----粒子的预备
    mybatis_延迟加载
    mybatis_动态SQL
    mybatis_mapper动态代理
  • 原文地址:https://www.cnblogs.com/cyq0528/p/13612394.html
Copyright © 2011-2022 走看看