一个致命的bug--自负

王豆豆现在怀着无比复杂的心情写下此文,谨以此文献给广大越挫越勇的软件测试人员们。

此刻为什么王豆豆的心情无比复杂呢?

原因有三:

1.在临近年关的时候,好多小伙伴都放假了,王豆豆却还在加班上项目

2.上项目也就罢了,竟然还被开发在眼皮底下写了一个bug上去

3.写了一个bug也就罢了,竟然没有被发现消灭在摇篮中,竟然在线上去招摇了一圈。

简单总结起来就是一句话:项目上线后发现了一个bug

为什么项目上线了才发现bug呢?说到原因王豆豆要先去哭哭再回来。

哭完回来了分割线


说起原因先追溯下项目本身需求:

本次项目的需求很简单,就是A公司向我们借款,借钱肯定是大事情嘛,不都得打个欠条什么的(借款合同),然后我们向B公司请求在签约平台上签了好欠条(借款合同),签好之后推给我们,欠条嘛不都得双方都保存的么?所以我们也存表并将欠条(借款合同)回调给A公司。

是不是一个很简单的逻辑,很清楚明了的一个需求?

就是这样一个简单的需求,大名鼎鼎的王豆豆竟然栽上面了,与其说是被栽上面上,不如说是被开发给谋害了(此处伤心过头,开始推卸责任了),伤心啊,枉我一世英名啊。。。

BIG BUG诞生的原因:

这个项目从上周四提测之后,苍天不负有心人王豆豆花了一天多时间将分析出来的所有测试范围测试完毕,然后就开始与B公司联测(A公司还在开发),与B公司联测完毕后,就等A公司了,这里差点连黄花菜都等出来了。

好不容易星期一开始与A公司联测,不管与谁联测,联测从来没有顺利过,至到昨天终于与A公司联测完毕,所有测试流程都通过,我们发给他的欠条也能正常收到

话说今天就准备开始上线了,原本计划上午上线,但是开发说优化了一下代码,要先回归一下,回归就回归嘛,好简单的事情嘛。

今天下午开始回归,测试过程很顺利,唯独就是给A公司调回调接口发欠条的时,总是返回“连接超时”,最后确定是对方环境的问题,也就没管了,然后就开始上线了。

我滴个神,BUG诞生分割线


项目上线后,前面流程很顺利,但后来一个华丽丽的BUG就这样诞生了。

我们调A公司生产合同接口时发欠条(测试环境和生产环境不同,回调接口也不一致),给我们返回“保存信息失败”,这是什么情况?

当时王豆豆想的是这一定不是我们的问题,一定是对方存数据出错了,因为在测试时对方就报了这样一个bug。

现实和想象总是那么滴不同,不仅不同,而且还这么反转,难道你以为这是在拍电影么?话说电影就是来源于生活,也不是没有道理。

最终检查数据发现,结论:就是我们的BUG,给对方的request_data未按要求写,少了一部分内容。

戏剧啊,太戏剧了,当时王豆豆真不敢相信她的眼睛,不是已经联测过了,为什么联测的时候通过了?

继续查询分割线


最后发现,就是从今天下午四点后向对方请求的报文都少了内容,请求体与前面的不同,原来是开发人员优化代码是将报文对象引用成别的对象导致的。

事情的经过就是这样,开发在我眼皮底下写了一个bug,而我竟然没有发现,而且还让其上线了,真是好伤心,简直是给我幼小的心灵重重一击。

总结:

按理这么明显的一个bug,为什么会没有发现呢?

主要原因是以下几点:

1.对方测试环境不通,一直返回连接超时,而将保存信息失败的bug隐藏起来了,导致我这边无法获取到最真实的结果-----直接原因

2.明知对方环境不通,我也只是在微信群上发了几次,在对方并没有完全解决好问题的情况下,就不在追踪了-----间接原因

3.为什么不追踪?如果是我们一直联调测试也没有成功,我肯定会一直跟踪下去,但是我没有,最直接的原因是因为自己的自负,相信昨天的结果-----深层次原因

细分析下来出现这样的bug,也是必然的,因为我犯了软件测试人员最忌讳的一点:过于自信,未精益求精,所以出现bug,责任全在于我,并不在开发。

因为我一般都不相信开发人员,开发人员说没改,那一定是改了,只不过改的范围小了一点,可能就是一个变量名,也可能就是代码换了一下位置,就像今天开发人员就是说自己没改,而我最相信的是自己,相信自己的测试结果,那个requst_data在前面测试时特意检查过,反而今天就不怎么在意了。

4.还犯了一个错误,以前在调对方接口返回错误信息时,我都会将请求体和返回信息一并发给对方,但今天只将返回信息发出来了,可能我认为就是对方环境的问题,与我们请求报文无关,如果一并发出来,也许群里的某个小伙伴就能发现。

软件测试这个工作来不得半点假,一定要用实事求是和精益求精的态度对待每一次测试,对于测试结果不要相信开发,不要相信自己,哪怕有一丁点儿不对,也要拿出死磕的决心来,对战到底,只有这样才不会放过每一个潜在的bug。

最后愿每出现的一个bug都会成为我们勋功章上的一抹亮丽的色彩。

原文发布于微信公众号 - 资深Tester(zishentester)

原文发表时间:2018-02-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏程序人生

Botwall - Bot Firewall??

Mountain View的El Camino Real和Castro交界的地方,有一栋大楼,地址是:800 W El Camino Real,里面入驻了不少创...

3497
来自专栏程序人生

软件架构之Indirection

先说两句题外话。最近蹭蹭蹭地长听众,程序君顿感惶恐。我做『程序人生』的一个原则是:一切文章皆原创,只谈开发,产品,创业,管理等和工程师的程序人生相关的内容。 有...

3428
来自专栏大数据文摘

手把手 | 用Python写成的MCR乐队敲诈者木马:这种操作很朋克!

1432
来自专栏PHP技术

高级PHP工程师所应该具备一些技能

初次接触PHP,就为其美所折服,于是一发不可收拾。 很多面试,很多人员能力要求都有“PHP高级工程师的字眼”,如果您真心喜欢PHP,并且您刚起步,那么我简单说说...

3176
来自专栏FreeBuf

AcFun泄露数千万条用户信息,黑客已在Github公布部分数据

北京时间 6 月 13 日凌晨,AcFun 发布公告称网站遭遇黑客攻击,近千万条用户数据外泄。呼吁 2017 年 7 月 7 日之后从未登陆过的用户以及密码强度...

1690
来自专栏数据和云

关于炉石传说的Oracle数据库故障不要以为你也可以幸免

最近暴雪公司和网易的一则声明刷爆了朋友圈,大意就是由于『供电意外中断的原因而产生故障,导致数据损坏』,这样一则公告引发了一系列的猜想,我们在围观时仿佛人人都是诸...

3627
来自专栏罗超频道

Facebook Home评测:用了感觉有点“囧”

罗超为虎嗅网、雷锋网、TECH2IPO撰稿。2013年4月23日发表于首页。 FacebookHome推出后,因为众所周知的原因国内暂时无法使用它。但这也没有阻...

3144
来自专栏程序人生

高效能程序员的七个习惯

昨天收到一个读者留言,问作为程序员,有什么学习和工作上的好习惯可以借鉴?想了想,干脆附庸风雅一下,总结个『高效能程序员的七个习惯』吧。Disclaimer:一家...

3479
来自专栏FreeBuf

旧手机的隐私顽疾:砸了浪费,卖了受罪

应该不止我一个人对2008年春晚上《开锁》这个小品记忆犹新,表演源自于生活,小品亦是如此。最近看到的一些事件,也让我重新完整地看了一次这个小品,确实精彩。

1475
来自专栏程序人生

你要避免的软件开发模式

做软件开发十数年,见识了形形色色的开发者,和各种各样的奇葩软件开发模式。本文跟你侃侃这些软件开发模式及其特点。 IDD(IDE-Driven Developme...

3376

扫码关注云+社区