你如何在Sinatra进行测试?

Ton*_* M. 17 ruby testing sinatra

我不知道如何测试我的Sinatra应用程序.我跑吧

红宝石

这似乎不起作用.那里的所有文件只讨论如何编写文件的内容,而不是如何让它运行.

谢谢

psy*_*yho 27

应该够简单.

鉴于my_app.rb:

require 'rubygems'
require 'sinatra'

get '/hi' do
  "Hello World!"
end
Run Code Online (Sandbox Code Playgroud)

和my_app_test.rb:

require 'my_app'
require 'test/unit'
require 'rack/test'

set :environment, :test

class MyAppTest < Test::Unit::TestCase
  include Rack::Test::Methods

  def app
    Sinatra::Application
  end

  def test_hi_returns_hello_world
    get '/hi'
    assert last_response.ok?
    assert_equal 'Hello World!', last_response.body
  end
end
Run Code Online (Sandbox Code Playgroud)

你应该确保你安装了正确的宝石:

gem install sinatra rake rack-test
Run Code Online (Sandbox Code Playgroud)

现在您可以像这样运行您的应用程序和测试:

ruby my_app.rb
ruby my_app_test.rb
Run Code Online (Sandbox Code Playgroud)


Dam*_*kić -1

应该像这样简单ruby your_app_name.rb。实际上,这显示在Sinatra 主页(底部)上。