今天在测试环境发现自己写的程序在插入表A是有重复的数据,这就苦恼了我,如果程序正常运行是不会出现重复的数据的,到底是自己程序写的有问题还是其他测试人员手工插入的数据了??我来回看了几次代码,又做了测试,都没有重现重复数据的bug。我这下子就郁闷了,是程序有哪些细节的逻辑没有考虑清楚了还是别的什么问题??反正弄得我很不安心。。。。。
没办法,抽了支烟,仔细想了想,对了,每行记录都是有id(序列)这么一列嘛,虽然重复数据的创建时间都是一样,但是它的序列肯定是不同的,我可以查看重复数据所对应的序列值是不是连续的来判断这到底是系统自己跑出来的结果,还是人为手工插入进去的。
结果一查看重复数据的序列值果然不是连续的(因为要是系统插入重复数据的话,序列值肯定是连续的),而且相差很远。这就证明了重复数据不是同时插入进去的,而是认为手工插入的!!(因为程序有逻辑:如果该行存在就只能update,不能insert)
呵呵,这招大家可以记住,在测试环境中可能用的到。。。。。。