0

rspec を直接実行できますが、Rakefile は次のように単純です。

require 'rspec/core/rake_task'

task :default => [:spec]

RSpec::Core::RakeTask.new do |task|

end

次のような出力が得られます C:\Ruby193 -S rspec ./spec/hello_spec.rb

ruby 実行可能ファイルが見つからないことがわかります。rspec はそれがどこにあるかをどのように知るのですか? Ruby の環境変数をオフにしましたが、それでもこれが行われます。

4

1 に答える 1

0

メインの Ruby インストールでバイナリを見つけることができるように、2 つのタイプの環境変数を設定する必要がありました。まず、ユーザーの場合は ruby​​\bin\ruby.exe へのパス全体を入力し、システムの場合は bin ディレクトリへのパスのみを入力します。これで問題が解決したようで、他のバイナリを引き続き実行できます。

USER: %RUBY% = C:\Ruby193\bin\ruby.exe を PATH に追加

SYSTEM: %RUBY% = C:\Ruby193 これを Path に %RUBY%\bin として追加します

同じドライブである限り、ansicon.exe とルートからの dll を使用します。

require 'rspec/core/rake_task'

task :default => [:spec]

RSpec::Core::RakeTask.new do |task|
  task.pattern = "./spec/*_spec.rb"
  task.rspec_opts = ['-c']# for ansi colors
end

ブロックにデフォルトは必要ないことに注意してください。task はデフォルトの test です。いくつかのオプションを設定するだけです。

于 2013-05-27T14:06:27.283 に答える