2014-03-25 37 views
1

我有如下的配置,同時:如何測試頁面的標題與西納特拉+ MINITEST工作

Rake文件

require 'rake/testtask' 

Rake::TestTask.new do |t| 
    t.pattern = 'spec/*_spec.rb' 
end 

的Gemfile

source 'https://rubygems.org' 

gem 'sinatra' 
gem 'thin' 
gem 'rack-test' 

spec_helper.rb

ENV['RACK_ENV'] = 'test' 

require 'minitest/autorun' 
require 'rack/test' 
require_relative '../app' 

include Rack::Test::Methods 

def app 
    MyApp 
end 

app_spec.rb

require_relative 'spec_helper' 

describe 'Hello World' do 

    it 'should have hello world' do 
    get '/' 
    last_response.must_be :ok? 
    # I want to do something like below 
    last_response.title must_match /home page/i 
    end 
end 

如何測試使用MINITEST和西納特拉視圖的頁面標題。

回答

2

單獨使用minitest無法檢查。

您應該看到Capybara來實現這一目標。

Capybara通過模擬真實用戶 與您的應用交互的方式幫助您測試Web應用。

一旦安裝使用has_title?匹配測試渲染頁面的標題。

使用Capybara,你可以測試你的頁面的各個方面,如它的內容/文本,如果它有一個特定的鏈接,特定的按鈕,文本字段,電子郵件字段等。 你可以模擬填充行爲一個表單並點擊一個按鈕來提交。簡而言之,它只是通過模擬用戶可以在給定頁面上執行的操作,以及用戶在給定頁面上可以看到的操作。

+0

感謝您的回答.. –

+0

@ArupRakshit你能接受解決這個問題的答案嗎? – Roman

+0

@羅曼爲什麼不。完成。 –