改bug制造bug...

故事背景,我看打印输出有报错,于是加了一个容错。然后出现bug了,一个副本的机器人没了。反思问题所在,当我们去改别人的任何代码,都可能会出现bug,因为确实不知道别人的设计。

引出了另外一个奇怪的问题,就是他的代码在别人的电脑或其他环境是不会报错的。我当然是看到报错才去修改的,这代码在我这里确实报错了。代码如下

这个是我加的 if(not mbr)then return end

函数被return了,出现bug。

outlook = mbr and mbr.outlook,

这个确实是处理了容错,即使上面空也不会报错,我做过实验。。。

能正常运行。。。

bug肯定是我改出来的了,我们应该怎么避免这种情况。

我们容错应该是要兼容以前的流程,既然以前是不return的,那么是否应该报空给默认值会更好?

if(not mbr)then return end

改成

if(not mbr)then mbr={} end

怎么说呢,这样改并不能完全避免产生新的bug,比如本来别人只是报错了,属于正常报错。

加了默认值然后继续运行,下面可能扣钱或者加钱,那么就出现新的bug...

这个最稳只有去搞清楚这个函数是哪个功能,然后相关功能都测试一遍了。。。。

相关推荐
·云扬·1 天前
【Bug】CentOS 7 使用vim命令报错vim: command not found
centos·vim·bug
奶糖 肥晨2 天前
解决 UniApp 自定义弹框被图片或 Canvas 覆盖的 Bug
uni-app·bug
phantom_1117 天前
Cursor 分析 bug 记录
bug·cursor
Direction_Wind8 天前
Flinksql bug: Heartbeat of TaskManager with id container_XXX timed out.
大数据·flink·bug
AIBigModel10 天前
智能情趣设备、爆 bug:可被远程操控。。。
网络·安全·bug
Direction_Wind10 天前
flinksql bug: Received resultset tuples, but no field str
bug
远瞻。11 天前
【bug】diff-gaussian-rasterization Windows下编译 bug 解决
windows·bug
中草药z11 天前
【测试】Bug+设计测试用例
功能测试·测试工具·测试用例·bug·压力测试·测试
我又来搬代码了11 天前
【Android】【bug】Json解析错误Expected BEGIN_OBJECT but was STRING...
android·json·bug
葵野寺12 天前
【软件测试】BUG篇 — 详解
bug·测试