Yanıtlar:
Buradaki dokümanlarda görebileceğiniz gibi, amaçlanan kullanım oluşturmak ~/.rspec
ve içinde seçeneklerinizi koymaktır --color
.
Seçeneği kullanarak hızlı bir şekilde ~/.rspec
dosya oluşturmak için şunu --color
çalıştırın:
echo '--color' >> ~/.rspec
.rspec
veya spec_helper.rb
? @shamaoke @christoph
~/.rspec
Çözümün en büyük avantajlarından biri taşınabilirliktir. Örneğin CI sunucumuz renk çıktısını çok iyi işlemiyor. User dir config dosyası ile farklı ortamlara kolayca uyum sağlayabiliriz.
Bir spec_helper.rb
dosya tüm projelerde de kullanılabilir . Dosya aşağıdakileri içermelidir:
RSpec.configure do |config|
# Use color in STDOUT
config.color = true
# Use color not only in STDOUT but also in pagers and files
config.tty = true
# Use the specified formatter
config.formatter = :documentation # :progress, :html,
# :json, CustomFormatterClass
end
Herhangi bir örnek dosya, yardımcının bu seçenekleri kullanabilmesini gerektirir.
.rspec
dosyayı işaret eden abyx'lerin aksine .
color_enabled
şimdicolor
Senin içinde spec_helper.rb
dosyaya, aşağıdaki seçeneği içerir:
RSpec.configure do |config|
config.color_enabled = true
end
Daha sonra, *_spec.rb
bu seçeneği kullanması gereken her dosyada gerekir.
Rspec testlerini çalıştırmak için komisyon kullanıyorsanız, spec / spec.opts dosyasını düzenleyebilirsiniz
Veya sadece alias spec=spec --color --format specdoc
benim gibi ~ / .bashrc dosyanıza ekleyin.
.rspec
, projeye teslim edildiğinde, onu alan herkes aynı ayarları alacaktır.
.rspec
Dosyayı kullanıcının ana dizinine koymanın (cevabımda belirttiğim gibi) kullanıcının rspec'in tüm çağrıları için global olarak çalıştığını unutmayın. Bu, takma ad kullanmaktan daha sağlamdır, çünkü kullanıcının kullanabileceği bazı taşlar / diğer takma adlar / araçlar takma adı kullanmaz
Dikkat edilmesi gereken bir şey, RSpec'i çalıştırmanın farklı yollarının etkisidir.
Spec / spec_helper.rb aşağıdaki kod ile seçeneği açmaya çalışıyordum -
Rspec.configure do |config|
config.tty = $stdout.tty?
end
Sonunda ~ / .rspec seçeneğini kullandım, içeriği sadece --tty ile. Benim için iyi çalışıyor ve CI sunucu çıktımızı temiz tutuyor.
--tty
çağrı cihazlarını kullanırken bile renk istiyorsanız, gereklidir.