2012-03-09 11 views
6

Ho trovato le risorse per configurare Rails affinché utilizzi Minitest. La maggior parte delle risorse, purtroppo, presuppone l'uso di Minitest Spec per tutti i tipi di test o, nel migliore dei casi, almeno per il test di integrazione.Come configurare minitest per i test di integrazione usando lo stile dell'unità

Posso essere "vintage", ma sento le asserzioni al test: l'unità funziona meglio per me rispetto allo stile rspec. Vorrei utilizzare lo stile di dichiarazione MiniTest :: Unit, insieme a Capybara, per eseguire i test di integrazione.

Sono interessato a vedere un esempio di minitest_helper.rb e some_model_integration_test.rb per comprendere gli elementi di configurazione rilevanti che devo mettere in atto per fare in modo che il test di integrazione funzioni bene con Capybara.

Qualcuno può spiegare come configurare Rails per questo?

risposta

9

mio articles_integration_test.rb:

require 'test_helper' 

class ArticlesIntegrationTest < IntegrationTest 

    def test_shows_article_title 
    article = Article.create!(title: 'Foo bar') 
    visit article_path(article) 
    assert page.has_content?('Foo bar') 
    end 

end 

mio test_helper.rb:

ENV["RAILS_ENV"] = "test" 
require File.expand_path("../../config/environment", __FILE__) 
require "minitest/autorun" 
require "capybara/rails" 
require "active_support/testing/setup_and_teardown" 

class IntegrationTest < MiniTest::Unit::TestCase 
    include Rails.application.routes.url_helpers 
    include Capybara::DSL 
end 
Problemi correlati