проблема автотеста
-
22-10-2019 - |
Вопрос
Я только что установил Zentest 4.4.6, который включает автотест 4.4.6, и когда я запускаю автотест, я получаю следующую ошибку:
gems/ZenTest-4.6.0/lib/autotest.rb:226:in `autodiscover': undefined method `any?' for Gem::Specification:Class (NoMethodError)
хм?как будто он вернулся к Ruby без рельсов
Решение
Я не знаю японского, но смотрю
http://d.hatena.ne.jp/hkj/20110724
Я узнал, что вы можете заставить это работать, изменив строку 226 с:
# hacky_discovery = Gem::Specification.any? { |s| s.name =~ /^rspec/ }
к
# hacky_discovery = true
Эта строка была последний раз изменена в этом коммите: https://github.com/seattlerb/zentest/commit/b462a8f1dcc03528d91c77cabc15f8575d9c378c
Об этой проблеме сообщается здесь: https://github.com/seattlerb/zentest/issues/5
ОБНОВЛЯТЬ:Чтобы решить эту проблему, просто обновите свои RubyGems: gem update --system
ОБНОВЛЕНИЕ 2:ZenTest 4.6.1 решает эту проблему.
Другие советы
У меня была эта проблема и обнаружил, что ее можно избежать, переходя от Rubygems с 1,8.6 к 1,8,5
Я просто играл с версиями в Gemfile, пока проблема не ушла. Существует некоторая странная несовместимость между тестирующими компонентами.