前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我的Debug之路1.0

我的Debug之路1.0

作者头像
sunonzj
发布2022-06-21 14:30:33
2150
发布2022-06-21 14:30:33
举报
文章被收录于专栏:zjblogzjblog

刚做完一个项目肯定是会有问题的,不可能测试一个bug都没有.吧..

之前开发的接口项目,提供给微信小程序用的。

最近项目和前端对接,发现了很多问题,简单说一下解决异常的思路心得。

先了解是哪个接口有问题,具体的异常信息是什么。

(像一些参数效验、抛出异常信息,记录错误日志真的是非常重要,因为项目在服务器跑起来能除了浏览器调试查看异常信息,也只能靠日志记录错误了)

1、数据问题:数据库测试数据有问题,查看是否有关联表未插入数据或者插入的数据不对。分析他们填写到后台的参数类型,格式是否符合(有些没做参数效验...)。

2、服务问题:查看服务是否构建、zookeeper中服务提供是否正常。

3、接口代码问题,(代码问题那就是测试不够啊,这样不好,改起来麻烦而且影响进度),,以后还是要自己多测试找找bug,尽量让接口没bug,因为和前端沟通,然后再修改,再重新构建,步骤还是挺复杂的。

 确认参数无误,那就运行本地项目,测试一下(用他们的参数)运行确实报错,查看错误信息,并解决,根据错误信息还不能解决,设断点,找出报错的代码。。登录服务器查看日志,日志显示事务的第一个节点的save方法有问题,服务重新构建无误,查看dubbo(用的zookeeper)也没问题,md这时候就很烦了(大概确定服务、数据库、代码都没问题,而事务有问题),百度错误信息,还是没解决,请教同事看着他操作一番也没查到错误,最后在新建流程的地方发现错误在这呢,,原来是之前项目经理设计数据库时表名单词拼错trade写成了tarde,然后同事改回来了..但那时候我们代码都写完了,只好把代码都改成trade...然后漏了这个流程新建的地方忘记改了,导致服务save的时候有问题,因为服务命名是根据表名写的。

一个不算错误的错误,解决起来却花了不少时间啊··· 还浪费了同事时间,这种问题我一时还发现不了,同事也是搞了一番才找到。。以后想问题还是得更全面一点吧。

ps:找问题和解决问题的方法基本都是跟我那个同事学的,看他解决问题的办法和思路,受益良多,当然问的多了他也会烦,所以有时候态度不好,都是可以理解的。

153959369625756082729.png
153959369625756082729.png

解决过的问题也很多了,各种问题也遇到过,最费时间的还是那种不是问题的问题,,有的时候会搞个一上午,然后吃完中饭回来一看,”哇擦,原来这地方有个空格”。经常耗在一个简单到爆的地方很久,心态有时候都会炸。。

细心很重要,全局观也要,不能被一个方法或者一句代码卡着。。然后,实在想不出来的时候,不防先休息一下(上个厕所或者揉一揉大脑),你会发现突然你就知道哪里错了..

思路要清晰,虽然很容易被搞混乱。。不能钻牛角尖,虽然老是因为想要搞明白某个问题而浪费几个小时。

Debug Still in....

D9QMRVU(Q@9}T6]%11Y0IKM.png
D9QMRVU(Q@9}T6]%11Y0IKM.png
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-10-15 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档