测试多年,崩溃遇到无数,这个崩溃是比较典型的可以拿来纪念一下:
背景:线上出现崩溃bug,开发修复了,测试一下上线
目的:查看是否修复成功
步骤:复现崩溃,验证崩溃是否修复
测试思路:
1、安装线上版本的测试包
2、复现bug,比较坑的是:
没有明确的崩溃步骤,首先要收集数据;
bug日志空,找开发要;
公式无;
3、与开发交流:为何出现这个bug?原因是:计算的中间环节,aim 算出结果为0,可实现盈亏/aim=roe
4、根据开发提示修改:im,iom字段为0,线上测试版本无崩溃;
“holder_vol 和 close_vol 这个也设置为0“ ——根据提示继续设置为0,无崩溃,我已经崩溃了,然后找开发,要公式:aim = hold_vol / (hold_vol + close_vol)
没错:
1)这么 修改没有问题,说明线上没有bug?
2)bug不是这里的,是其他地方的?或者我的修改方式不对?
3)公式不对,或者公式不完整,重新要?
新公式如下:
4)好吧,有坑(开发给了崩溃日志后,确实必崩,确实是这里的bug;)咋办?先复现崩溃,解析公式
崩溃发生是aim=0得到的。那么aim如何才能为0?
a)im>mm 且im=0,不可能发生im=0,忽略这个情况;
可以试试会不会崩溃,试过发现不会崩溃
b)im<mm :holder_vol =close_vol=0
c)im<mm :holder_vol +close_vol=0
d)im<mm :oim=0
分别尝试过后,发现崩溃产生了,换新修改包后崩溃消失,说明已修复
总结:出现bug不要慌,出现必崩bug也不要慌,大不了要数据,要来整理分析,看看到底哪里有问题
这个bug不大好复现,因为数据不全,对分析来说还是比较坑对,但是这个bug还是比较好复现的因为bug日志已经明确的表示出来了,加油吧,面对崩溃,自己不要先崩溃