2010-08-10 5 views
1

У меня есть проблема с этим классомПочему я получаю «Тест не класс» в этом Ruby-скрипте?

require "test/unit" 
require "selenium/client" 

class Test < Test::Unit::TestCase 

    def setup 
    @verification_errors = [] 
    @selenium = Selenium::Client::Driver.new \ 
     :host => "localhost", 
     :port => 4444, 
     :browser => "*chrome", 
     :url => "http://change-this-to-the-site-you-are-testing/", 
     :timeout_in_second => 60 

    @selenium.start_new_browser_session 
    end 

    def teardown 
    @selenium.close_current_browser_session 
    assert_equal [], @verification_errors 
    end 

    def test_test 
    @selenium.open "/apj/gestionnaire/flux.ex" 
    @selenium.wait_for_pop_up "_self", "30000" 
    end 
end 

он говорит мне, что это не класс:

/test.rb:4: Test is not a class (TypeError) 
from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require' 
from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' 
from C:/Documents and Settings/Micro/My Documents/Aptana RadRails Workspace/.metadata/.plugins/org.rubypeople.rdt.testunit/ruby/RemoteTestRunner.rb:301 

Кто-нибудь есть какие-либо идеи? С уважением Bussiere

ответ

4

Использование Test, так как ваше имя класса - плохая идея. Это существующая константа (со ссылкой на модуль), как только вы требуете test/unit

require "test/unit" 
Test.class # => Module 

Используйте другое имя для вашего теста.

+0

Это поможет – user462794

0

Использование теста в качестве названия вашего класса - плохая идея.

Неверно! Сегодня была выпущена новая версия rspec-rails gem, исправляющая эту проблему в некоторых случаях.

Вы посмотрите на файл the changelog может:

Fix "Тест не класс (TypeError)" ошибка при использовании пользовательского класса Test в Rails 4.1 и 4.2. (Аарон Кромер, №1295)

Смежные вопросы