松哥原创的 Spring Boot 视频教程已经杀青,感兴趣的小伙伴戳这里-->松哥要升级 SpringBoot 视频了,看看新增了哪些内容!
上周末被一个小伙伴的问题难住了:
小伙伴在做 vhr 的时候,遇到一个问题,就是一个接口时而正常时而 403,并且表示正常和 403 之间似乎是随机的,毫无规律可言。
老实说,这样的问题在我看来不够专业,为什么说不够专业呢?稳定重现才是解决问题的基础。
我讲一个我刚工作时候遇到的问题:
当时我还是一名 Android 工程师,有一天我们的测试找到我,说我开发的一个页面有问题,具体什么问题他也说不清楚,反正就是页面点着点着就崩溃了。我说你把手机拿过来点一下我看看,他把手机拿过来,在我面前点了很久,都没有崩溃,我自己也点了一会,也没问题啊。
测试跟我一样也是刚毕业的,听我这么一说又悻悻的回到工位,刚坐下,他又说崩溃了。。。对于这种他们无法稳定重现的问题,他们也会在任务管理系统上提出来,他们提出来的问题就和前面这位小伙伴的说法如出一辙,时而崩溃时而不崩溃,有时候点一两下就崩溃,有时候点很久也不崩溃,好像是随机崩溃的一样。
我肯定不认可他们的说法,而且稳定重现 Bug 本身就是测试的职责,于是问题就一直放着。直到有一天测试经理找上门来,当着我的面粗暴的点着页面,突然就崩了。这下我无话可说,但是他们测试经理也无法稳定重现 Bug。这让我不得不吐槽,在移动互联网火的那几年,很多从业者真的很水。
没办法,我就自己解决问题,首先要找到崩溃的原因,我在页面上划着,有时候会崩溃有时候则不会崩溃,在划了很久之后,我终于找到了规律,在页面顶部有一个高度为两三个像素的一条线,如果下拉刷新时手指点到那里了,就必然崩溃,如果没点到那里,就不会崩溃。
现在,我能稳定的重现 Bug 了,那么问题解决就很容易了。
❝
这个页面是我开发的,自定义了用户手势。但是我记得开发的时候专门计算了,确保顶部不留空隙,怎么会多出来一个空隙呢?翻了 Svn 上的提交日志看到我的关键类被另外一个同事改过。我真的是要气炸了,算了,刚毕业还是夹着尾巴做人吧。
讲这个事情就是想告诉大家,计算机逻辑严谨,所谓时好时坏的问题,其中一定隐藏着规律。能稳定的重现 Bug,你的问题就解决掉 99% 了,如果不能稳定重现问题,解决这个 Bug,那你还没跨进大门。
类似的问题,在我做 Java 之后也遇到过很多,解决起来就一条:先稳定重现。
小伙伴们在实际开发中有没有遇到过类似问题呢?欢迎留言讨论。
1
50+ 需求文档免费下载!
2
Spring Security 教程合集
3
接了两个私活,都是血汗钱
本文分享自微信公众号 - 江南一点雨(a_javaboy)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。