Case:我们线上的数据出现一个异常。打个比方:就是一个没有库存的化妆品,在前台显示成可以添加到购物车,实际上应该只显示没有库存的信息。即,购物车和没有库存的警告信息同时出现了,这是矛盾的!!!
这个Case让我来查,因为我当时没有项目任务。 其实我不喜欢查Case的,因为Case都是比较不易查出的问题,如果很好查,测试也能测出来了。
处理Case的过程:Case是以邮件的形式分发到我这里的,我参照邮件上异常信息的截图,将url输入,发现线上现在是正常的;因为是数据的异常,我就检索线上的数据库,发现数据和线上的显示是一一对应的,即,一切正常。这就意味着,我没有办法“还原”之前的异常现场。线上的代码在本地是没有办法调试的,所以只能在本地去新建测试数据,debugger,查出问题所在。通过FF的FireBugger,可以抓到在视图层的问题模块的位置,通过代码跟进,找到处理数据的代码。那么现在仔细分析一下,购物车是说明有库存,警告信息是没有库存的时候出现。那么我们可以创建一个测试数据——有库存的数据,来测测,是不是会出现:警告信息(偏重一头去测试)。如果没有异常,就创建一个没有库存的数据,就测测 购物车会不会出现。找到bug的出错点。经过调试,我发现,这2种情况都没有错,就是说代码的逻辑是没有错误的。后来就怀疑是数据同步的问题。
之后证实,的确是数据同步的时候,出了问题。