我需要一些关于如何在手动UI测试中处理测试数据的建议。我们的应用程序需要数据库中的数据才能工作并手动测试。由于我们处理的是敏感数据,因此我们不允许转储生产数据,以便在我们的测试系统(或开发机器)上使用它。
你如何处理这个问题?我正在考虑在测试中屏蔽生产数据的可能性,是否有免费或开源工具?我更喜欢这种解决方案,因为有可能产生海量数据。我希望你有一个想法,手动创建测试数据将是非常耗时的。
答案 0 :(得分:2)
RedGate Sql Data Masker http://www.red-gate.com/labs/sql-data-masker/是针对此问题而设计的,但它不是免费的,也不是开源的。你可以循环进入一些随机函数来生成大量的垃圾,虽然听起来你正在寻找“买”而不是“构建”。
答案 1 :(得分:1)
屏蔽时需要考虑各种要点。例如:
如果您能够手动满足这些项目,那就太棒了!但是,如果您希望在保持成本降低的同时及时完成这项工作(更不用说保护公司及其数据库免受暴露),我建议您在www.datamasking上查看数据屏蔽的最佳实践。 .COM
希望这有帮助!
答案 2 :(得分:0)
如果您通过DAO(数据访问对象)访问数据,您可以创建该对象的模拟来测试您的代码,我在项目中使用了Mockito。如果您正在测试的代码直接访问数据库,则必须将其指向某种类型的“测试数据库”......
模拟的一个额外功能是所谓的间谍对象,它是一个围绕底层真实对象的模拟,你可以用测试代码覆盖一些方法,即禁用删除,创建掩码等,而所有非模拟重写方法直接传递给底层真实对象...结账:http://docs.mockito.googlecode.com/hg/latest/org/mockito/Mockito.html