Nic*_*ich 5 ruby rake rspec serverspec
如果我使用以下命令之一运行ServerSpec(基于RSpec)Rake:
rakerake specrake spec:allrake spec:<host>bundle exec rake Rake stdout在serverspec输出之前打印它执行的命令:
/usr/bin/ruby1.9.1
-I/var/lib/gems/1.9.1/gems/rspec-core-3.1.6/lib:/var/lib/gems/1.9.1/gems/rspec-support-3.1.2/lib
/var/lib/gems/1.9.1/gems/rspec-core-3.1.6/exe/rspec
--pattern spec/<host>/\*_spec.rb
Run Code Online (Sandbox Code Playgroud)
如果我手动传递目标主机来rspec这样...
TARGET_HOST=<host> rspec
Run Code Online (Sandbox Code Playgroud)
......行不会不露面.
如何防止Rake输出此行/命令?
我正在使用由...生成的默认Rakefile serverspec-init.
require 'rake'
require 'rspec/core/rake_task'
task :spec => 'spec:all'
task :default => :spec
namespace :spec do
targets = []
Dir.glob('./spec/*').each do |dir|
next unless File.directory?(dir)
targets << File.basename(dir)
end
task :all => targets
task :default => :all
targets.each do |target|
desc "Run serverspec tests to #{target}"
RSpec::Core::RakeTask.new(target.to_sym) do |t|
ENV['TARGET_HOST'] = target
t.pattern = "spec/#{target}/*_spec.rb"
end
end
end
Run Code Online (Sandbox Code Playgroud)
尝试改变
RSpec::Core::RakeTask.new(target.to_sym) do |t|
ENV['TARGET_HOST'] = target
t.pattern = "spec/#{target}/*_spec.rb"
end
Run Code Online (Sandbox Code Playgroud)
至
RSpec::Core::RakeTask.new(target.to_sym) do |t|
ENV['TARGET_HOST'] = target
t.pattern = "spec/#{target}/*_spec.rb"
t.verbose = false
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1507 次 |
| 最近记录: |