在用rspec做测试的时候,出现了如下一句错误:
You don't have bcrypt-ruby installed in your application. Please add it to your Gemfile and run bundle install
原来在Gemfile中写的是:
gem 'bcrypt-ruby'
因为后面没指定版本号所以默认安装的是最新版,但是不巧的是在bundle install时提示bcrypt-ruby已被改名为bcrypt,所以安装的gem名字是后者.
rspec在测试时依赖于bcrypt-ruby这个名字,所以你只有回到Gemfile中去指定bcrypt-ruby为较旧的版本:
gem 'bcrypt-ruby','3.0.1'
再次bundle install,然后进行测试,一切正常!