2012-03-09 8 views
6

Encontré recursos para configurar Rails para usar Minitest. Desafortunadamente, la mayoría de los recursos asume el uso de Minitest Spec para todos los tipos de prueba o, en el mejor de los casos, al menos para la prueba de integración.Cómo configurar minitest para pruebas de integración usando el estilo de unidad

Puedo ser "vintage", pero siento que las afirmaciones son una prueba: la unidad funciona mejor para mí que el estilo rspec. Usaría el estilo de declaración MiniTest :: Unit, junto con Capybara, para ejecutar las pruebas de integración.

Estoy interesado en ver un ejemplo de minitest_helper.rb y some_model_integration_test.rb para comprender los elementos de configuración relevantes que necesito establecer para que la prueba de integración funcione bien con Capybara.

¿Alguien puede explicar cómo configurar Rails para esto?

Respuesta

9

Mi 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 

Mi 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 
Cuestiones relacionadas