2012-03-09 64 views
6

我发现配置Rails以使用Minitest的资源。不幸的是,大多数资源假定所有测试类型都使用Minitest Spec,或者至少在集成测试中最好。如何使用单元样式配置minitest进行集成测试

我可能是“年份”,但我感觉断言ala测试:单位工作比rspec风格更适合我。我将使用MiniTest :: Unit声明风格和Capybara一起运行集成测试。

我有兴趣看到minitest_helper.rb和some_model_integration_test.rb的示例,以了解我需要设置的相关配置元素,以便使集成测试与Capybara很好地协同工作。

有人可以解释如何为此配置Rails吗?

回答

9

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 

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