2016-11-09 3 views
1

Ich überholte gerade ein neues Projekt und die rake test produziert eine Menge Kauderwelsch-Ausgabe. Warum ist das der Fall? Ich habe versucht, alle Edelsteine ​​zu entfernen, die ich nicht kenne, aber trotzdem ist meine Ausgabe getrübt. Ich rufe die Testsuite über bundle exec rake test an.Meine Schienen Tests produzieren Kauderwelsch Ausgabe

Beispielausgabe - es ist Seiten dieser Art von Sachen.

/Users/hendricius/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-3.2.22.5/lib/active_support/file_update_checker.rb:98: warning: File.exists? is a deprecated name, 
use File.exist? instead 
/Users/hendricius/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-3.2.22.5/lib/active_support/file_update_checker.rb:98: warning: File.exists? is a deprecated name, 
use File.exist? instead 
/Users/hendricius/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-3.2.22.5/lib/active_support/file_update_checker.rb:98: warning: File.exists? is a deprecated name, 
use File.exist? instead 
/Users/hendricius/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/activesupport-3.2.22.5/lib/active_support/file_update_checker.rb:98: warning: File.exists? is a deprecated name, 
use File.exist? instead 

screenshot of the tests running

Die Ruby-Version von der .ruby-version Datei ist 2.2.2. Die installierte Schienenversion ist 3.2.22.5.

Mein Test Edelsteine ​​sind:

group :test, :development do 
    # gem 'rack-mini-profiler' 
    # gem 'minitest' 
    gem 'minitest-rails' 
    gem 'test-unit' 
    gem 'shoulda' 
    gem 'shoulda-matchers' 
    gem 'fabrication' 
    gem 'byebug' 
end 

ich meine Rakefile dann geprüft verdoppeln. Es hat den folgenden Inhalt:

# Add your own tasks in files placed in lib/tasks ending in .rake, 
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake. 

require File.expand_path('../config/application', __FILE__) 

WooWoop::Application.load_tasks 

task default: [:test] 

Das einzige, was ich mir vorstellen konnte mein test_helper wäre. Ich habe den Inhalt unten eingefügt. Es sieht gut aus.

ENV["RAILS_ENV"] = "test" 
require File.expand_path("../../config/environment", __FILE__) 
require "rails/test_help" 
require "minitest/rails" 
require "minitest/pride" 
require 'shoulda' 
require 'shoulda/matchers' 
# $VERBOSE=nil 

# ActiveRecord::Migration.check_pending! 
ActiveSupport::TestCase.test_order = :random 
# Protractor test or even some dirty debugging in the rails console on test environment 
# might have left some garbage on the DB. Lets make sure we start with a clean state. 
# parses the response and returns it. 

Die einzige Art, wie ich die Ausgabe zum Schweigen bringen kann, ist, wenn ich RUBYOPT=W0 TEST=test/unit/shop_test.rb be rake test verwenden. Ist das der einzige Weg, da ich noch Schienen 3 benutze?

Update:

Ich versuchte nun zu degradieren 2.0.0

ich noch viele seltsame Warnungen erhalten ruby ​​ich noch nie zuvor gesehen haben.

/Users/hendricius/.rbenv/versions/2.0.0-p648/lib/ruby/gems/2.0.0/gems/carrierwave-0.10.0/lib/carrierwave/uploader/configuration.rb:89: warning: instance variable @mount_on not in 
itialized 
/Users/hendricius/.rbenv/versions/2.0.0-p648/lib/ruby/gems/2.0.0/gems/carrierwave-0.10.0/lib/carrierwave/mount.rb:243: warning: instance variable @previous_model_for_showcase_cov 
er_picture not initialized 
/Users/hendricius/.rbenv/versions/2.0.0-p648/lib/ruby/gems/2.0.0/gems/carrierwave-0.10.0/lib/carrierwave/uploader/configuration.rb:89: warning: instance variable @mount_on not in 
itialized 
/Users/hendricius/.rbenv/versions/2.0.0-p648/lib/ruby/gems/2.0.0/gems/carrierwave-0.10.0/lib/carrierwave/mount.rb:243: warning: instance variable @previous_model_for_manager_pict 
ure not initialized 
(eval):11: warning: instance variable @opening_hours_monday_from not initialized 
(eval):2: warning: instance variable @opening_hours_monday_to not initialized 
(eval):11: warning: instance variable @opening_hours_tuesday_from not initialized 
(eval):2: warning: instance variable @opening_hours_tuesday_to not initialized 
(eval):11: warning: instance variable @opening_hours_wednesday_from not initialized 
(eval):2: warning: instance variable @opening_hours_wednesday_to not initialized 
(eval):11: warning: instance variable @opening_hours_thursday_from not initialized 
(eval):2: warning: instance variable @opening_hours_thursday_to not initialized 
(eval):11: warning: instance variable @opening_hours_friday_from not initialized 
(eval):2: warning: instance variable @opening_hours_friday_to not initialized 
(eval):11: warning: instance variable @opening_hours_saturday_from not initialized 
(eval):2: warning: instance variable @opening_hours_saturday_to not initialized 

Edit:

Ich landete schließlich ein Upgrade bis Schienen 4. Alle Warnungen verschwunden sind.

+0

Welche Ruby-Version hat das Projekt zuvor verwendet? Warum verwenden Sie nicht die gleiche Version wie im ursprünglichen Projekt? Erschaffe nicht mehr Probleme, als du erstellen musst. – Casper

+0

Das war '2.0.0-p481'. Ich gebe das eine Chance. – Hendrik

+0

Ich erinnere mich jetzt, warum ich aktualisiert habe: 'WARNUNG: ruby-2.0.0-p481 hat sein Lebensende überschritten und wird jetzt nicht mehr unterstützt. Er empfängt keine Fehler mehr oder kritische Sicherheitsupdates. – Hendrik

Antwort

1

Drei (andere) Optionen der Warnung loszuwerden:

  1. Herunterstufung Rubin, bis die Warnung weg geht. Sie verwenden eine alte Version von Rails, die vor Ruby 2.2 erstellt wurde. File.exists? wurde irgendwann vor Ruby 2.2 veraltet.

  2. Bearbeiten Sie manuell die fehlerhaften Zeilen in Ihrem Edelstein-Repository.

  3. eine Masse Suche starten und Shell-Befehl in Ihrem gem Repository ersetzen:
    https://superuser.com/questions/428493/how-can-i-do-a-recursive-find-and-replace-from-the-command-line

... und natürlich die letzte Option: upgrade Rails.

+0

Ich habe Ruby 2 heruntergestuft. Jetzt bekomme ich noch eine Menge anderer Warnungen. Ich vermute, ich habe etwas, das bei meinen Tests verrückt macht. '(eval): 11: Warnung: Instanzvariable @opening_hours_monday_from nicht initialisiert' zum Beispiel. – Hendrik

+0

@Hendrik Ouch..sounds kompliziert: -/ – Casper

+2

Sie können versuchen, es als 'RUBYOPT =" - W0 "Rake Test" – max