Rakefile使RSpec运行两次测试

Rakefile使RSpec运行两次测试,rspec,rake,Rspec,Rake,我对rake运行RSpec有一个奇怪的问题。RSpec本身工作正常,但当使用此耙子通过耙运行时: require 'rubocop/rake_task' require 'rspec/core/rake_task' RuboCop::RakeTask.new(:cop) RSpec::Core::RakeTask.new(:spec) task default: [:cop, :spec] 它生成如下输出: 失败: 1) 公共访问自行车扩展底座的成员无法释放,因为无可用 失败/错误:预期{

我对rake运行RSpec有一个奇怪的问题。RSpec本身工作正常,但当使用此耙子通过耙运行时:

require 'rubocop/rake_task'
require 'rspec/core/rake_task'

RuboCop::RakeTask.new(:cop)
RSpec::Core::RakeTask.new(:spec)

task default: [:cop, :spec]
它生成如下输出:

失败:

1) 公共访问自行车扩展底座的成员无法释放,因为无可用 失败/错误:预期{停靠站.释放自行车}。引发错误“无可用自行车” 预期异常为“无可用自行车”,但未引发任何问题 #/Users/me/Projects/boris bikes/spec/feature/public_bike_access_spec.rb:12:in‘block(2层)in’

2) 公共访问自行车扩展底座的成员无法释放,因为无可用 失败/错误:预期{停靠站.释放自行车}。引发错误“无可用自行车” 预期异常为“无可用自行车”,但未引发任何问题 #./规格/特征/公共\自行车\通道\规格rb:12:in‘区块(2层)in’

在0.01419秒内完成(加载文件需要0.36303秒) 10个示例,2个故障

失败的示例:

rspec/Users/me/Projects/boris bikes/spec/feature/public_bike_access_spec.rb:10#public access bike扩展底座的成员无法释放,因为没有可用的 rspec./spec/feature/public_bike_access_spec.rb:10#public access bike扩展底座的成员无法释放,因为无可用

/Users/me/.rvm/rubies/ruby-2.2.0/bin/ruby-I/Users/me/.rvm/gems/ruby-2.2.0/gems/rspec-support-3.2.1/lib:/Users/me/.rvm/gems/ruby-2.2.0/gems/rspec-core-3.2.0/gems/rspec-core-3.2.2.0/exe/rspec--pattern/**/**/**

它似乎在同一位置两次找到同一规范文件

用户/me/Projects/boris bikes/spec/feature/public\u bike\u access\u spec.rb:10

/规格/特征/公共自行车通行规格rb:10


你知道是什么原因造成的吗?

Rspec将自己添加到默认值。您想先用clear将其删除,然后再重新添加:

task(:default).clear.enhance [:cop, :spec]

谢谢@dankohn-不幸的是,这似乎没有帮助。最初的耙叶刀在其他机器上工作得非常好。只是这台机器似乎有这个问题,这让我认为它与底层文件系统上的符号链接有某种联系-rspec运行良好,即只有一个测试。我想知道RSpec::Core::RakeTask是否以一种不同的方式添加了RSpec搜索路径,以从命令行运行RSpec…有什么解决方法吗?我正在经历类似的行为。仍然没有-另一位同事在另一台机器上也经历过-但没有仔细观察它-再次,这只是rake任务,而不是原始的rspec-我认为我们需要向维护rspec RakeTask的人提交错误报告-我想这只是基本的rspec人员。。。