加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 如何为测试目的模拟数据库故障(在Ruby on Rail

发布时间:2020-12-17 03:21:01 所属栏目:百科 来源:网络整理
导读:通过某些监视工具(例如Monit)使用心跳消息使应用程序幸存下来是一种常见的设置.如果应用程序正在运行并且一切正常,它将返回“我还活着”消息,如果数据库失败或Web服务器挂起则不返回任何内容或内部服务器错误(HTTP状态代码500)页面.如何模拟数据库失败以在 R
通过某些监视工具(例如Monit)使用心跳消息使应用程序幸存下来是一种常见的设置.如果应用程序正在运行并且一切正常,它将返回“我还活着”消息,如果数据库失败或Web服务器挂起则不返回任何内容或内部服务器错误(HTTP状态代码500)页面.如何模拟数据库失败以在 Ruby on Rails中测试此行为?如果可以在测试(Test :: Unit或RSpec)本身内为测试目的启用/禁用此功能,那将是很好的.

解决方法

看起来可以使用ActiveRecord :: Base.remove_connection来模拟数据库故障.使用RSpec这看起来像:

describe "GET running" do
    it "renders a 500 if crashed" do
      ActiveRecord::Base.remove_connection
      get :running
      response.response_code.should == 500
      ActiveRecord::Base.establish_connection
    end
  end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读