ruby-on-rails - 跨多个环境的 Rails 测试

标签 ruby-on-rails ruby testing environment

有没有什么方法可以在测试中途更改 Rails 环境?或者,设置一个可以在一个环境中启动 Rails 的测试套件的正确方法是什么,在其中运行我的前半部分测试,然后在另一个环境中重新启动 Rails 以完成测试?这两个环境有独立的数据库。

一些必要的上下文:我正在编写一个 Rails 插件,它允许多个安装的 Rails 应用程序在用户帮助下相互通信,以便没有 Internet 访问权限的用户仍然可以使用该应用程序。他们将运行应用程序的本地版本,并将他们的工作上传到在线应用程序,方法是将文件保存到拇指驱动器并将其带到网吧。

该插件为 Rails 添加了两个特殊环境:“offline-production”和“offline-test”。我想编写涉及“测试”和“离线测试”环境的功能测试,分别代表应用的主要在线版本和应用的本地离线版本。

编辑:我一直在阅读 Rack::Test,它似乎是可行的方法,因为它将测试框架置于 rails 本身之外。但是我仍然不知道如何使用它来进行涉及多个环境的测试。任何想法,任何人?

最佳答案

也许从拥有多个数据库连接的角度来思考问题,而不是拥有多个环境?您无法真正中途切换环境,至少在没有大量黑客攻击和搞砸的情况下是这样。 :)

http://anandmuranal.wordpress.com/2007/08/23/multiple-database-connection-in-rails/

关于ruby-on-rails - 跨多个环境的 Rails 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2915031/

相关文章:

ruby-on-rails - 测试期间 nil 类的未定义方法 '[]'

ruby-on-rails - 翻译 Rails 应用程序的最佳选择

ruby-on-rails - 如何在 Rails View 中使用 Ruby 常量?

Ruby yield 示例解释?

rest - 如何使用针对多个微服务的REST API测试来对测试框架进行版本控制/标记?

ruby-on-rails - group_by 不适用于 rails3

ruby-on-rails - Ruby on Rails 中 db/seeds.rb 中的代码范围是什么?

ruby - 对两个 Ruby 数组执行外连接

java - 使用数据提供者编写 Java 测试

Scala 测试 Mailer.sendEmailClientSuspended