大家好,我是阿东。致力于分享测试技术、职场管理、产品运营的一只老鸟。
工作中常遇到,明明测试环境覆盖了这个场景,上生产后这个场景出了Bug。遇到这类问题,测试同学都不知所措,慌得一批。排除遗漏测试场景的情况,引起这类问题的产生,我总结了以下原因。希望能帮助测试的小伙伴稳住心态,发现并解决掉。
一、环境的差异
测试环境与生产环境差异过大。如:生产环境采用的读写分离,一主多从的部署方式。测试环境的服务不采用主从。这种方式很容引起操作数据类的bug。版本不一样,如:JDK版本不同或者数据库的版本不同。注:测试前从线上同步环境配置到测试环境不会存在这类问题。
二、代码的差异
开发分支管理不规范。上线的分支与测试的分支不是同一个或者合并分支的时候部分代码被冲掉了。导致测的和上的不是同一个内容。
三、服务依赖的差异
被测业务所依赖的服务与线上的服务有很大的差异,尤其在多套测试环境中尤为凸显。如:被依赖的业务服务,在不同的测试环中下运作的代码不同,上完线后也会出现这类问题
四、底层数据的差异
一般性能测试会受数据库铺底数据的影响。
五、测试场景和实际场景的差异
测试路径与实际数据产生的路径不同。如:没有进行全流程的测试,采用挡板mock的方式,与实际产生的数据有差异。
结束语:当然不止这些原因。当我们遇到问题稳住心态,排查他并解决他,避免重复问题的再出现。
如果文章对您有帮助
「点赞」和「转发」是对我最大的支持