rspec - 找不到命令

时间:2016-03-13 06:26:50

标签: ruby-on-rails ruby rspec

作为作业的一部分,我正在创建一个基本网站。 当rails服务器未运行且我对根目录执行“rspec”时,执行rspec 。但测试失败了。当我启动rails服务器并从另一个终端窗口执行rspec(在转到根目录后),rspec不起作用。我收到以下消息 -

  

Tushars-MacBook-Pro:recipefinder tusharsaurabh $ rspec   -bash:rspec:找不到命令

请告诉我,如何解决。

4 个答案:

答案 0 :(得分:7)

也许您的rspec命令未在系统范围内安装,没问题,请尝试运行

bundle exec rspec

它应该有用。

答案 1 :(得分:1)

您无需运行rails服务器即可执行rspec。 Rspec独立运行。只需运行rspec spec。它将运行您在项目的spec文件夹中编写的规范。

如果你需要两个都运行那么你需要做这样的事情。它可能会工作。请试一试。

添加到您的gem文件:

group :development, :test do
  gem 'rspec-rails'
end

从你的控制台点击捆绑包。

bundle
rails generate rspec:install

答案 2 :(得分:1)

我使用gem install rspe解决了这个问题。有我找到的其他解决方案,但我没有尝试:sudo gem install rspec,另一个bundle exec rspec spec

答案 3 :(得分:0)

我在处理 Rails 6 应用程序时遇到了同样的挑战:

使用以下方法将 rspec 添加到我的 Gemfile 后:

group :test do
  gem 'rspec-rails', '~> 5.0'
end

并使用 bundle install 安装它,当我运行命令 rspec 时出现错误:

<块引用>

未找到 rspec 命令

这是我修复它的方法

解决方案 1

由于 rspec 并未全局安装在您的系统上,而是在您的项目中,因此您每次都需要运行该命令:

bundle exec rspec

解决方案 2

我们可以为 rspec 生成 binstub,而不是冗长的 bundle exec rspec,这样我们就可以使用 bin/rspec 或仅使用 rspec 运行我们的规范:

bundle binstubs rspec-core

注意:关闭你当前的终端/shell并在运行命令后重新打开一个新的

现在您可以运行命令 rspec,一切都会好起来的。

仅此而已。

我希望这会有所帮助