【问题标题】:Rails route without controller没有控制器的 Rails 路由
【发布时间】:2014-03-11 20:54:34
【问题描述】:

在我的路由文件中,我有这个没有控制器的随机路由

match "/ping" => lambda{ |env| [200, {'Content-Type' => 'text/plain'}, ['ACK']] }

使用 Test::Unit / MiniTest,我将如何进行测试,是的,路由 /ping 返回 'ACK'

【问题讨论】:

    标签: ruby-on-rails testing minitest


    【解决方案1】:

    当你创建一个没有控制器的路由时,你不能使用ActionController::TestCase 来测试它。相反,您应该使用ActionDispatch::IntegrationTest。在test/integration/ping_test.rb 创建一个包含以下内容的文件:

    require "test_helper"
    
    class PingTest < ActionDispatch::IntegrationTest
      def test_ping
        get "/ping"
        assert_response :success
        assert_equal "ACK", response.body
      end
    end
    

    【讨论】:

      【解决方案2】:

      绝对使用集成测试。在此处查看详细信息:http://guides.rubyonrails.org/testing.html#integration-testing

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-12-01
        • 2012-10-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-10-05
        • 1970-01-01
        相关资源
        最近更新 更多