通常可以查看请求接口、传参、响应(Charles抓包、浏览器自带的开发者工具)来判断是前端还是后端的问题:
(1)不涉及接口,一般来说就是前端的问题;
页面交互逻辑(页面跳转)、视觉样式、按钮、浮层弹窗基本都是前端;
数据上的问题,折扣的准确性,价格计算逻辑,列表排序,计算逻辑属于后端bug;
(2)查看报头Headers:
1)请求接口request URL是否正确
如果请求接口URL不正确,为前端Bug;
2)http请求中的参数是否正确
请求是get——参数「query string parameters」拼接在url后面
请求是post——Request payload里是(请求的参数)前端传给后端的参数,请求的参数不正确,为前端问题;
3)如果接口URL和参数都正确,查看响应内容是否正确
如果这种情况下response响应内容不正确,则为后端Bug。
(3)Preview里是后端的返回,code:200就是返回成功;Code:500报错一般是后端bug
后台反馈的数据:code、success、data的意义看接口文档
根据接口的文件,检查数据是否正确,如果发送的数据是正确的,但是后台反馈的数据是不符合需求的,那就是后台的问题;如果前端没有请求接口,或者请求的时候发送数据与需求不符,那就是前端的问题了
(4)校验问题
例如:前端输入为空不能保存问题——前端传参是空,后端返回为空,最终保存成功,这是前端未做校验;
如果定位为后端的bug,应该如何精确定位是哪里出了bug呢
1.查看报错日志,通过日志分析问题点
2.查看数据库确认数据的正确性
3.查看缓存是否正确