Rails Gemfile 说明

Rails Gemfile Clarification

因此,尽管我自己创建了 3 个 rails 复杂度不断增加的应用程序。我还没有部署它们中的任何一个。我今晚决定创建另一个应用程序(真的是用我学到的一些新东西重做一个旧应用程序)并且它击中了我。

我真的不完全理解 gem 文件,我理解,但我想我自己也有很多。这看起来很明显和直接,但我在 Whosebug 上要求澄清或至少减轻我的第二次猜测。

我对Gemfile的理解如下

默认为 gems,即 gems 将在所有环境(测试、开发和生产)中持续存在,测试 gems 仅存在于测试环境中, dev gem 在开发环境中,production gem 在生产环境中。

到目前为止,我有点只是将我的大部分 gem 设置为默认设置,但我想在养成习惯之前纠正它。我喜欢使用 rails' 内置测试(我知道,嘘,嘶嘶声),我使用 minitest 记者、守卫 minitest 和 minit 回溯作为我的助手。有人告诉我,最佳做法是将它们和任何与测试相关的 gem 放在明显的测试环境中。我不认为我曾经设置过测试数据库,更不用说使用测试环境了。为什么那些不进入开发环境?还是当您 运行 测试使用测试环境时,即使您没有明确创建测试环境?

Is it when you run tests that's using a test environment even if you didn't explicitly create one?

$ rails console test带你进入测试环境