Test::Unit を使用するテスト スイートを含む Rails プロジェクトがあります。Guard と Spork をセットアップして、テストを自動的に実行し、合格/不合格で通知を送信しようとしています。Guard と Spork は正常に動作しており、起動時に通知を送信しますが、テスト通知が機能しません。terminal-notifier-guard を使用して、Growl と Mac OS X の両方の通知を使用してみました。
私のGemfileの関連部分は次のとおりです。
group :test do
gem 'sqlite3'
gem 'selenium-webdriver'
gem 'rr', :require => false
gem 'capybara'
gem 'database_cleaner'
gem 'timecop'
end
group :test, :development do
gem 'guard'
gem 'spork'
gem 'spork-testunit'
gem 'guard-test'
gem 'guard-rake'
gem 'guard-spork'
gem 'terminal-notifier-guard', :require => false
gem 'rb-inotify', require: false
gem 'rb-fsevent', require: false
gem 'rb-fchange', require: false
end
そして test_helper.rb:
# -*- encoding : utf-8 -*-
require 'rubygems'
require File.expand_path('../../config/environment', __FILE__)
require 'rails/test_help'
require 'spork'
Spork.prefork do
require 'rubygems'
ENV["RAILS_ENV"] = "test"
require 'capybara/rails'
require 'database_cleaner'
require 'rr'
require 'ostruct'
require "#{Rails.root}/test/test_support"
class ActionController::TestCase
include Devise::TestHelpers
def teardown
super
Timecop.return
end
end
class ActionDispatch::IntegrationTest
self.use_transactional_fixtures = false
include Capybara::DSL
Capybara.default_driver = :selenium
DatabaseCleaner.strategy = :truncation
def setup
super
DatabaseCleaner.clean
end
def teardown
super
DatabaseCleaner.clean
Timecop.return
end
def login_admin(admin=nil)
admin = Admin.create!(:email => "super_badass@wickedawesome.com", :password => "sloppy") if !admin
visit "/admins/sign_in"
fill_in "admin_email", :with => admin.email
fill_in "admin_password", :with => admin.password
click_on "log in"
admin
end
end
end
Spork.each_run do
# This code will be run each time you run your specs.
end
私は途方に暮れています。どんな助けでも大歓迎です。