作为一道面试题,它算高频了么?我面试别人问过挺多次,我也被面试官问过...
1、前后端bug有各自的一些特点:
2、定位BUG属于前端还是后端,我常用的2种方法:
(1)接口查看法:查看接口请求参数和响应结果。
(2)日志查看法:查看后端服务日志有无,以及错误日志信息。
还有一些常见的前端问题,也可以在浏览器控制台输入js代码调试进行分析
如果定位为后端的bug,可以进一步通过以下方法精确定位是哪里出bug
-
查看报错日志,通过日志分析问题点
-
查看数据库确认数据的正确性
-
查看缓存是否正确
3、如果进行接口测试,发现的bug,很大概率是后端的bug
根据返回的状态码:
-
返回200
-
查询数据类型的接口,返回的数据和数据库的数据是否匹配——不匹配就是开发的sql写错了
-
操作功能型的接口,比如新增,修改,删除等,返回的结果不正确——逻辑错误
-
输入的数据不符合要求,但是操作成功了——数据校验问题:长度,类型,等价类/边界值
-
-
40*(404/405)请求的问题,我们接口请求操作的问题,不是bug
-
404: 大部分是URL 不正确
-
405 大部分是 传输的方式不正确,把get改为post或者post改成get
-
-
50* 一般就是服务端代码bug ——查日志