gpt4 book ai didi

ruby-on-rails - 如何加快为 rspec 测试创建 5,000 条记录的速度?

转载 作者:数据小太阳 更新时间:2023-10-29 06:50:48 25 4
gpt4 key购买 nike

我正在使用 Ruby on Rails 3.2.2、FactoryGirl 3.1.0、FactoryGirlRails 3.1.0、Rspec 2.9.0 和 RspecRails 2.9.0。为了测试我的应用程序,我必须在数据库中创建大量记录(大约 5000 条),但是该操作非常慢(创建记录需要 10 多分钟)。我这样进行:

before(:each) do
5000.times do
FactoryGirl.create(:article,)
end
end

如何改进我的规范代码以加快速度?

注意:可能速度较慢是由在每个文章创建过程前后运行的 (5) 个文章回调引起的,但我可以跳过这些(因为我唯一需要测试的是文章和不是关联的模型)如果那些缓慢的记录创建......是否有可能做到这一点,这是正确的方法吗?

最佳答案

当你开始像那样处理大量记录时,最好直接在 sql 中执行,以避免你不需要的 ActiveRecord 开销。
我希望编写一个脚本或创建一个存储过程来根据您的 sql 实现来执行此操作。它很可能会在几秒钟内完成。

关于ruby-on-rails - 如何加快为 rspec 测试创建 5,000 条记录的速度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10611973/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com