gpt4 book ai didi

ruby-on-rails - 在测试环境中应该打开还是关闭预加载?

转载 作者:行者123 更新时间:2023-11-28 19:50:35 26 4
gpt4 key购买 nike

这是在标准的test.rb中:

# Do not eager load code on boot. This avoids loading your whole application
# just for the purpose of running a single test. If you are using a tool that
# preloads Rails for running tests, you may have to set it to true.
config.eager_load = false

此建议适用于运行整个测试套件,还是仅适用于运行单个测试?

我如何决定是打开还是关闭它?

在运行单个测试时将其设为 false 而在运行整个套件时将其设为 true 是否有妙招?

(我怀疑我遇到的某些类型的错误是关闭此功能的结果)

最佳答案

预加载适用于每个测试,因此即使在运行整个测试套件时也可以扩展。

通常评论中提到的工具是测试工具(如 capybara ),你几乎需要将 eager_loading 设置为 true 否则你会得到缺少常量的错误。

如果您需要在 eager_loading 设置为 false 的情况下运行一些测试,而在其他设置为 true 的情况下,您可以使用这样的东西:

# config/environments/test.rb

config.eager_load = !!(ENV['ENABLE_SPRING'] == 'true')

然后你像这样运行那批特定的测试

$ ENABLE_SPRING=true bundle exec rspec spec/test_name.rb

来源:亲身经历+ https://guides.rubyonrails.org/autoloading_and_reloading_constants.html#autoloading-in-the-test-environment .

关于ruby-on-rails - 在测试环境中应该打开还是关闭预加载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28993934/

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