Як встановити глобальну конфігурацію для RSpec в Ubuntu.
Зокрема, у всіх моїх проектах (тобто кожного разу, коли я запускаю rspec куди завгодно), увімкнено --color та --format specdoc.
Як встановити глобальну конфігурацію для RSpec в Ubuntu.
Зокрема, у всіх моїх проектах (тобто кожного разу, коли я запускаю rspec куди завгодно), увімкнено --color та --format specdoc.
Відповіді:
Як ви бачите в документах тут , призначене використання створюється ~/.rspecі в ньому розміщуються ваші параметри, такі як--color .
Щоб швидко створити ~/.rspecфайл із --colorможливістю, просто запустіть:
echo '--color' >> ~/.rspec
.rspecабо spec_helper.rb? @shamaoke @christoph
~/.rspecрішення є портативність. Наприклад, наш сервер CI не дуже добре справляється з кольоровим виведенням. За допомогою конфігураційного файлу користувача dir ми можемо легко прийняти його до різних середовищ.
Також можна використовувати spec_helper.rbфайл у всіх проектах. Файл повинен містити наступне:
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
Будь-який прикладний файл повинен вимагати від помічника, щоб мати можливість використовувати ці параметри.
.rspecфайл.
color_enabledзаразcolor
У свій spec_helper.rbфайл включіть наступний варіант:
RSpec.configure do |config|
config.color_enabled = true
end
Потім потрібно вимагати в кожному *_spec.rbфайлі, який повинен використовувати цю опцію.
Якщо ви використовуєте rake для запуску тестів rspec, ви можете редагувати spec / spec.opts
Або просто додати alias spec=spec --color --format specdocу файл ~ / .bashrc, як я.
.rspec, як коли він зареєстрований у проекті, будь-хто інший, який отримав його, отримає ті самі налаштування.
.rspecфайлу в домашній директорії користувача (як я вже згадував у своїй відповіді) працює у всьому світі для всіх викликів користувача rspec. Це насправді твердіше, ніж використання псевдонімів, оскільки деякі дорогоцінні камені / інші псевдоніми / інструменти, якими користувач може користуватися, не обов'язково використовують псевдонім
Слід пам’ятати про вплив різних способів роботи RSpec.
Я намагався включити параметр із наступним кодом у spec / spec_helper.rb -
Rspec.configure do |config|
config.tty = $stdout.tty?
end
Врешті-решт я використав параметр ~ / .rspec, з вмістом просто --ty. Для мене добре працює і підтримує чистий вихід нашого сервера CI.
--ttyтакож потрібен, якщо ви хочете кольору навіть при використанні пейджерів.