2013-03-22 7 views
1

Раньше я запускал Rails + RSpec + autotest. Теперь я обновился до ruby ​​2.0, и я хочу использовать minitest в среде без Rails (я использую Padrino/DataMapper). Я уверен, что я не одинок в этом.краткий рецепт установки, настройки и запуска minitest под автотестом или Guard

Что бы действительно полезным является кратким рецептом для установки и настройки вещи, чтобы простой команды:

$ autotest 

или

$ bundle exec guard 

начнет испытывать все под/тест. Я искал SO и InterWebs, и еще не нашел такой рецепт. Рецепт должен включать:

  • Какие драгоценные камни следует включать в ваш Gemfile?
  • какие команды вы выполняете для настройки среды?
  • какие конфигурации и файлы поддержки вам нужно создать (Rakefile? .autotest? И т.д ...)
  • средство для тестирования файлов require 'test_helper' заботиться о повторяющихся функций

Дополнительный кредит для показа как настроить рычание и spork для полного опыта XP!

ответ

3

Ммм, я не использую автотеста, в настоящее время кажется, что охрана лучше всего подходит, так:

# Add to Gemfile 
group :development do 
    gem 'terminal-notifier-guard' # or libnotify for linux 
    gem 'rb-fsevent', require: false # or rb-inotify for linux 
    gem 'guard-minitest' 
    gem 'minitest' 
end 

# From bash 
$ bundle update 
$ guard init minitest # or bundle exec guard init minitest 

# Edit the GuardFile, mine looks like: 
guard 'minitest' do 
    # with Minitest::Unit 
    watch(%r|^test/(.*)\/?test_(.*)\.rb|) 
    watch(%r|^app/models/(.*)\.rb|) { |m| "test/test_#{m[1]}.rb" } 
    watch(%r|^lib/(.*)([^/]+)\.rb|) { |m| "test/test_#{m[2]}.rb" } 
    watch(%r|^test/helper\.rb|)  { 'test' } 
end 

# Here my test helper.rb. /test/helper.rb 
ENV['PADRINO_ENV'] ||= 'test' 
require_relative '../config/boot' 
require 'minitest/autorun' 


# Have fun! 
$ bundle exec guard 
+0

Действительно здорово - я перешел к гвардии, и я любя его. Вы случайно используете рычание или ruby_gntp, и используете ли вы spork? Я пытаюсь решить, какой из уведомлений использовать ... –

+0

В моем энтузиазме я проверил ваш ответ. Но чтобы быть верным исходному вопросу, ответ должен показать, что у вас есть в файле test_helper, и, возможно, test.rake или что-то, что делает minitest go. Добавьте это, и я дам вам ваш чек! –

+0

Хорошо, добавил. Помните, что я обычно называю это helper.rb, а не test_helper.rb или helper_test.rb – DAddYE