我无法在计算机上运行测试,但是当我将分支推送到GitHub并将它们拉入时,它们就可以运行它们。
显然,这意味着我们的代码库是相同的,包括Gemfile
和Gemfile.lock
。
我的应用程序在development
中运行,因此我的宝石显然存在。
阻止测试运行的test
环境有什么不同?
我唯一能想到的是代码库之外还有一些东西负责这个。也许是~/.gem/
或~/.rvm/
下的某些内容 - 但我不知道在哪里寻找线索。想法?
测试尝试失误:
/Users/bsimpson/.rvm/gems/ruby-2.0.0-p481@books/gems/activesupport-4.0.5/lib/active_support/dependencies.rb:229:in `require': cannot load such file -- minitest/rails (LoadError)
from /Users/bsimpson/.rvm/gems/ruby-2.0.0-p481@books/gems/activesupport-4.0.5/lib/active_support/dependencies.rb:229:in `block in require'
from /Users/bsimpson/.rvm/gems/ruby-2.0.0-p481@books/gems/activesupport-4.0.5/lib/active_support/dependencies.rb:214:in `load_dependency'
from /Users/bsimpson/.rvm/gems/ruby-2.0.0-p481@books/gems/activesupport-4.0.5/lib/active_support/dependencies.rb:229:in `require'
from /Volumes/MyHD/Users/bsimpson/Dev/books/books/test/test_helper.rb:10:in `<top (required)>'
from test/controllers/photos_controller_test.rb:1:in `require'
from test/controllers/photos_controller_test.rb:1:in `<main>'
宝石列表 - 本地| grep minitest
minitest (4.7.5, 4.3.2)
minitest-capybara (0.5.0)
minitest-metadata (0.5.0)
minitest-rails (0.9.2)
minitest-rails-capybara (0.10.0)
minitest-test (1.1.0)
答案 0 :(得分:0)
您的应用程序在开发中工作的事实并不意味着所有宝石都存在。测试不是在开发环境中进行,而是在测试环境中进行。
尝试跑步:
bundle install
由于缺少源依赖性,可能无法正确安装某些gem。尝试查看bundle install是否返回任何错误。
我注意到你使用了active_support 4.0.5。我试图找到升级minitest gem是否能解决问题。我不确定这是否可行,因为不同的网站为您的版本的活动支持提供最小版本的minitest。跑步:
gem install minitest --version '=5.1'
并重新启动一切解决问题?
我们能看到您的Gemfile吗?
还值得尝试:在终端中转到Rails应用程序目录并运行:
rm ./Gemfile.lock
bundle install
这可能会更新您的宝石。