测试系统的时候,往往会碰到这样的一种情况:系统开发完成了,但是没有合适的数据可以使用。原因是多方面的:比如用户的数据不能公开,机密程度比较高。虽让你可以随机产生一些测试数据,但是简单的测试数据,和真正复杂的用户数据是无法相比的,所产生的问题就是,在测试数据上,简单的操作可以通过,而同样的操作到了用户数据上面,就产生各种情况(如性能问题)。
你如何解决这个问题呢?你如何得到一组数据,既不会泄露用户的机密数据,也保证了足够的数据量和复杂度?
Bobby Woolf 在他的blog中提出了使用Data Obfuscator(混淆数据):即通过一个特定的程序,特定的一组算法和规则,从用户的数据中摘取足够的数据量,同时,把一些敏感的数据(如姓名,薪水,保险号码等)替换成一些不重要(或者不敏感)的数据(比如,把姓名用A001, A002来替换掉)。
Data Obfuscator 原文参考
Design Pattern
Programming