Odpowiedzi:
Jak widać w dokumentach tutaj , zamierzonym zastosowaniem jest tworzenie ~/.rspec
i umieszczanie w nim opcji, takich jak--color
.
Aby szybko utworzyć ~/.rspec
plik z --color
opcją, po prostu uruchom:
echo '--color' >> ~/.rspec
.rspec
lub spec_helper.rb
? @shamaoke @christoph
~/.rspec
rozwiązania jest przenośność. Np. Nasz serwer CI nie radzi sobie zbyt dobrze z wydrukami w kolorze. Dzięki plikowi konfiguracyjnemu dir użytkownika możemy łatwo dostosować się do różnych środowisk.
spec_helper.rb
Plik można również wykorzystać we wszystkich projektach. Plik powinien zawierać:
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
Każdy przykładowy plik musi wymagać, aby pomocnik mógł używać tych opcji.
.rspec
plik.
color_enabled
jest terazcolor
W swoim spec_helper.rb
pliku umieść następującą opcję:
RSpec.configure do |config|
config.color_enabled = true
end
Następnie musisz wymagać w każdym *_spec.rb
pliku, który powinien używać tej opcji.
Jeśli używasz rake do uruchamiania testów rspec, możesz edytować spec / spec.opts
Lub po prostu dodaj alias spec=spec --color --format specdoc
do swojego pliku ~ / .bashrc tak jak ja.
.rspec
, ponieważ gdy jest on zarejestrowany w projekcie, każdy inny otrzymujący go otrzyma te same ustawienia.
.rspec
pliku w katalogu domowym użytkownika (jak wspomniałem w mojej odpowiedzi) działa globalnie dla wszystkich wywołań rspec przez użytkownika. To jest w rzeczywistości bardziej solidne niż przy użyciu aliasów, jak kilka innych perełek / aliasów / narzędzi użytkownik może używać niekoniecznie użyć aliasu
Jedną rzeczą, o której należy pamiętać, jest wpływ różnych sposobów uruchamiania RSpec.
Próbowałem włączyć opcję z następującym kodem w spec / spec_helper.rb -
Rspec.configure do |config|
config.tty = $stdout.tty?
end
W końcu użyłem opcji ~ / .rspec, której zawartością była tylko opcja --tty. Działa dobrze dla mnie i utrzymuje czysty wynik naszego serwera CI.
--tty
jest również wymagany, jeśli chcesz kolorować nawet przy użyciu pagerów.