Ich habe ein Problem beim Testen meines Edelsteins, der ein Verzeichnis lib
enthält, auf JRuby 1.7.4.Wie lib-Verzeichnis in rspec Tests enthalten
Ich möchte eine Datei auf lib/vger/resources/account_manager.rb
Meine Spec-Datei ist in spec/vger/resources/account_manager_spec.rb
require 'spec_helper'
describe Vger::Resources::AccountManager do
.
.
end
end
Ich versuche, die Datei aufzunehmen, die ich möchte testen in spec_helper.rb
require 'rubygems'
require 'bundler/setup'
require 'vger/resources/account_manager'
require 'vger'
RSpec.configure do |config|
# some (optional) config here
end
sich testen
Beim Ausführen des Tests mit dem Befehl rspec spec/vger/resources/account_manager_spec.rb
erhalte ich diesen Fehler:
NameError: uninitialized constant Vger::Resources
const_missing at org/jruby/RubyModule.java:2631
Ich scheint, dass die Datei, die ich testen möchte, nicht geladen wird. Bitte sagen Sie mir, wo ich falsch liege und wo ich Korrekturen vornehmen soll.
Versuchen Sie, Verwenden Sie 'require_relative' und den Pfad zu den Ressourcen im lib-Verzeichnis aus dem Verzeichnis, in dem sich' spec_helper.rb' befindet. Etwas wie 'require_relative" ../ lib/vger "' anstelle von 'erfordert" vger "' ant usw. –
@YevgeniyAnfilofyev Es scheint nicht zu funktionieren. Ich probierte Require_relative '../lib/vger/' auch Requires_relative '../lib/vger/resources/' und entfernen Anforderung 'Vger' und erfordern "vger/resources/account_manager" –
Siehe diese Frage http: // stackoverflow.com/questions/11376718/require-lib-in-rspec-mit-ruby-1-9-2-bringt-keine-so-Datei-zu-laden – toro2k