我正在尝试为我的Ruby项目设置一个Travis构建。测试使用的是rspec。它们使用默认的“rake”任务在本地传递,但在Travis构建时失败,错误如下:
/home/travis/.../vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/spec/diff_spec.rb:6:in‘块in ':未初始化的常量Diff::LCS::SpecHelper (NameError)
我的应用程序没有直接使用diff,它似乎是rspec在内部需要的东西。
到目前为止我尝试过的事情:
Travis Config:
language: ruby
rvm:
- 2.0.0
- 2.1.0
cache: bundlerGemfile.lock:
rspec (2.14.1)
rspec-core (~> 2.14.0)
rspec-expectations (~> 2.14.0)
rspec-mocks (~> 2.14.0)
rspec-core (2.14.8)
rspec-expectations (2.14.5)
diff-lcs (>= 1.1.3, < 2.0).rspec
-c
--default_path .
--pattern **/*_spec*.rb
--require spec_helper发布于 2014-10-26 03:56:19
通过将模式指定为**/*_spec*.rb,您将告诉RSpec在项目中的所有目录中搜索规范文件。
您还配置了Bundler,以便将gems安装到您的项目目录中,因此RSpec正在搜索所有的gems,并尝试运行它们的规范和您自己的配置。
一个更好的模式是类似于spec/**/*_spec.rb (假设您的所有规范都在spec目录中)。这限制了RSpec对此路径的搜索。
https://stackoverflow.com/questions/26561878
复制相似问题