昨天在朋友圈看到一个故事,暂且认为是真实的事情吧。

小张和小王是某公司的两个后端开发工程师,分别负责公司 A 和 B 系统的研发,此为前情提要。

某个接口业务场景如下,客户端调用 A 系统接口,A 在处理过程中调用了 B 系统接口。

在日常功能开发迭代的过程中,小王(负责 B 系统)经常会收到测试同学的BUG第一指向责任人,但是很多问题自己排查下来,并不是 B 服务的问题,很多是 A 服务缺少验证和异常考虑导致的。

这个问题说大不大说小不小,在最近的项目总结会前夕,小王认真总结了自己名下的BUG情况,主要是最终流向和结果。

最终发现相当一部分BUG在小张哪里终结了,而且出现问题的模块也比较集中,这激发了小王的好奇心,在不断进行追根溯源之后,发现了一个惊天阳谋。

伪代码如下:

try {
    //此处省略五百行代码
    callBSystemMethod(params);
    //此处再省略五百行代码
} catch (Exception e) {
    logger.warn("系统异常!",e);
    return Result.fail("B系统调用异常!");
}

哈哈……


FunTester腾讯云社区钦定年度作者,非著名测试开发 er,欢迎关注。


↙↙↙阅读原文可查看相关链接,并与作者交流