问答 如何分辨一个 bug 属于前端还是后端问题????????

凯凯王✨ · 2021年11月24日 · 最后由 lcw 回复于 2021年11月26日 · 1117 次阅读

如何分辨一个 bug 属于前端还是后端问题????????

共收到 13 条回复 时间 点赞

以是否属于接口返回数据正确性来划分

看前端控制台日志,看接口,看后端日志,看数据库

好问题👍

看日志是一方面,但是有些时候还要结合接口文档或者咨询开发才能确认,比如后端日志报错并不是后端有问题,也有可能是前端参数值传的不对

注册 boss 直聘,它会给你推送这些问题,你会获得答案

那么如何凭借经验分辨呢

有时候会遇到这种情况,一个参数在 swagger 上备注是用户 id,前端传系统用户 id。
提测后,测试发现参数字段是对的,但是功能就是不正常,然后 bug 提交给后端。
后端一看 bug,直接指派给前端,备注说请传普通用户 id。
前端改代码,提交发版,验证功能正常。这 bug 谁来点解决?

最好是抓包,查看前端发送数据以及后端返回数据,如果是前端发送数据参数有误,请求不到后端通常报 401,如果是后端返回出错,通常是报 500,具体情况还得具体分析

绵绵不绝 回复

前端改的代码,前端点解决,可以要求后端以后写清楚点

绵绵不绝 回复

点解决应该是改代码那一方来点就好。

根本原因是写文档的人没写清楚,直接原因是前端实现的时候发现没讲特别清楚后,也没有找后端二次确认就直接自行脑补了。

1.看日志,哪一端报错就是哪一端的 bug。
2.如果没报错,那就是先看 api,如果数据返回错了,先检查是否是前端请求 api 时传错了,如果没传错是后端返回错了,是后端 bug,如果是 api 传参数错了,就是前端 bug
3.如果传参数没错请求看起来也是正常的,就有可能是前端取错数值了,如果值取对了也可能是解析错了,比如后端是返回 string,前端按 int 解析,或者后端返回个 100 亿的整数,前端按 int32 来解析
4.如果后端返回 string,前端是 int 处理这种,要先要确定是哪一端没按约定来,没按约定的哪一端肯定有 bug

看接口返回数据是否正确

web: console 报错给前端,接口报错给后端,都没报错给前后端
app: 接口 200 给前端,非 200 给后端
【手动狗头】

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册