我正在实施一种统计算法,需要访问大型样本数据集才能进行正确的测试。一个表中有50,000行,MySQL。
我想使用传统的RSpec方法进行测试,但是创建样本集并将其加载到DB中会导致两个问题。
mysqlimport
进行不正确的清理(意味着测试后数据库中保留的数据,尽管在块之后显式调用DatabaseCleaner)在内存中创建对象图是一种可能,但不是一个模仿者,我有点害怕覆盖AR功能。
任何想法,最佳做法?
谢谢! 贾斯汀
答案 0 :(得分:3)
这只是部分答案,但是:
- 使用Active Record创建极其缓慢/密集。 (...)我认为它不会产生巨大的速度差异
它实际上是一个很大的速度差异。 PostgreSQL有一个很好的指导:
http://www.postgresql.org/docs/9.0/interactive/populate.html
大多数它直接适用于MySQL:
- 使用hacky mysqlimport进行不正确的清理(意味着测试后数据库中保留的数据,尽管在块之后显式调用DatabaseCleaner)
如果要刷新所有数据的表格,请尝试截断: